From 034c5d57859a42c0b5024f452def1e276b84339f Mon Sep 17 00:00:00 2001 From: sebhoss Date: Fri, 13 Sep 2024 10:31:36 +0000 Subject: [PATCH] Update upstream specifications to their latest version --- .../v1beta1/pgupgrades.yaml | 4 +- .../v1beta1/postgresclusters.yaml | 2 +- .../v1beta2/scheduledsparkapplications.yaml | 6 + .../v1beta2/sparkapplications.yaml | 6 + .../kuadrant.io/v1alpha1/dnsrecords.yaml | 7 +- .../v1/aerospikeclusters.yaml | 2864 +++--- .../v1beta1/aerospikeclusters.yaml | 2834 +++--- .../v1/integrationplatforms.yaml | 4 +- .../v1/integrationprofiles.yaml | 4 +- .../camel.apache.org/v1/integrations.yaml | 2 +- .../camel-k/camel.apache.org/v1/pipes.yaml | 2 +- .../v1alpha1/kameletbindings.yaml | 2 +- .../v1alpha1/clusterdefinitions.yaml | 2 +- .../apps.kubeblocks.io/v1alpha1/clusters.yaml | 6 +- .../v1alpha1/componentdefinitions.yaml | 15 +- .../v1alpha1/componentversions.yaml | 2 +- .../v1alpha1/configurations.yaml | 4 +- .../v1alpha1/aliases.yaml | 2 + .../v1alpha1/eventsourcemappings.yaml | 6 + .../v1alpha1/functions.yaml | 10 + .../v1alpha1/functionurlconfigs.yaml | 2 + .../v1alpha1/versions.yaml | 2 + .../v1alpha1/cninodes.yaml | 8 +- .../v1beta1/securitygrouppolicies.yaml | 28 +- .../karpenter.k8s.aws/v1/ec2nodeclasses.yaml | 2 +- .../karpenter.sh/v1/nodeclaims.yaml | 2 +- .../karpenter.sh/v1/nodepools.yaml | 2 +- .../v1alpha1/replicationdestinations.yaml | 3 + .../v2/ciliumclusterwideenvoyconfigs.yaml | 45 +- .../v2/ciliumclusterwidenetworkpolicies.yaml | 1048 +-- .../v2/ciliumegressgatewaypolicies.yaml | 55 +- .../cilium/cilium.io/v2/ciliumendpoints.yaml | 42 +- .../cilium.io/v2/ciliumenvoyconfigs.yaml | 45 +- .../cilium.io/v2/ciliumexternalworkloads.yaml | 20 +- .../cilium/cilium.io/v2/ciliumidentities.yaml | 14 +- .../v2/ciliumlocalredirectpolicies.yaml | 62 +- .../cilium.io/v2/ciliumnetworkpolicies.yaml | 1046 +-- .../cilium/cilium.io/v2/ciliumnodes.yaml | 132 +- .../v2alpha1/ciliumbgppeeringpolicies.yaml | 108 +- .../cilium.io/v2alpha1/ciliumcidrgroups.yaml | 16 +- .../v2alpha1/ciliumendpointslices.yaml | 24 +- .../ciliuml2announcementpolicies.yaml | 52 +- .../v2alpha1/ciliumloadbalancerippools.yaml | 44 +- .../cilium.io/v2alpha1/ciliumpodippools.yaml | 14 +- .../postgresql.cnpg.io/v1/clusters.yaml | 4 + .../v1alpha1/feedinventories.yaml | 50 +- .../v1alpha1/globalizations.yaml | 2 + .../v1alpha1/subscriptions.yaml | 10 +- .../v1/compositionrevisions.yaml | 5 +- .../v1beta1/compositionrevisions.yaml | 5 +- .../org.eclipse.che/v2/checlusters.yaml | 9 + .../v1alpha2/clusteroutputs.yaml | 50 + .../fluentbit.fluent.io/v1alpha2/outputs.yaml | 50 + .../v1beta1/imageupdateautomations.yaml | 12 +- .../v1beta2/imageupdateautomations.yaml | 12 +- .../v1beta1/imagepolicies.yaml | 6 +- .../v1beta1/imagerepositories.yaml | 11 +- .../v1beta2/imagepolicies.yaml | 6 +- .../v1beta2/imagerepositories.yaml | 20 +- .../v1/receivers.yaml | 6 +- .../v1beta1/alerts.yaml | 7 +- .../v1beta1/providers.yaml | 6 +- .../v1beta1/receivers.yaml | 8 +- .../v1beta2/alerts.yaml | 6 +- .../v1beta2/providers.yaml | 8 +- .../v1beta2/receivers.yaml | 7 +- .../v1beta3/alerts.yaml | 2 +- .../v1beta3/providers.yaml | 4 +- .../loki/loki.grafana.com/v1/lokistacks.yaml | 163 + .../v1/teleportloginrules.yaml | 4 +- .../v1/teleportoktaimportrules.yaml | 4 +- .../v2/teleportprovisiontokens.yaml | 7 +- .../v2/teleportsamlconnectors.yaml | 4 +- .../v2/teleportusers.yaml | 4 +- .../v3/teleportgithubconnectors.yaml | 4 +- .../v3/teleportoidcconnectors.yaml | 4 +- .../v5/teleportroles.yaml | 4 +- .../v6/teleportroles.yaml | 4 +- .../infinispan.org/v1/infinispans.yaml | 3 + .../v1alpha08/sonataflowplatforms.yaml | 4 - .../sonataflow.org/v1alpha08/sonataflows.yaml | 2 - .../v1beta2/ibmpowervsclusters.yaml | 22 + .../v1beta1/admissionchecks.yaml | 6 +- .../kueue.x-k8s.io/v1beta1/clusterqueues.yaml | 24 +- .../kueue.x-k8s.io/v1beta1/localqueues.yaml | 8 +- .../v1beta1/resourceflavors.yaml | 8 +- .../kueue.x-k8s.io/v1beta1/workloads.yaml | 229 +- .../forklift.konveyor.io/v1beta1/plans.yaml | 2 +- .../kyverno.io/v1/clusterpolicies.yaml | 172 +- .../kyverno/kyverno.io/v1/policies.yaml | 172 +- .../kyverno.io/v2/cleanuppolicies.yaml | 18 +- .../kyverno.io/v2/clustercleanuppolicies.yaml | 18 +- .../v2alpha1/globalcontextentries.yaml | 15 + .../kyverno.io/v2beta1/cleanuppolicies.yaml | 18 +- .../v2beta1/clustercleanuppolicies.yaml | 18 +- .../kyverno.io/v2beta1/clusterpolicies.yaml | 172 +- .../kyverno/kyverno.io/v2beta1/policies.yaml | 172 +- .../v1beta2/backupbackingimages.yaml | 6 + .../k8s.mariadb.com/v1alpha1/mariadbs.yaml | 3 + .../v1beta1/flowcollectors.yaml | 36 +- .../v1beta2/flowcollectors.yaml | 90 +- .../v1alpha1/clientsettingspolicies.yaml | 8 +- .../v1alpha1/nginxproxies.yaml | 38 +- .../hive.openshift.io/v1/machinepools.yaml | 6 + .../v1alpha1/databaseclusters.yaml | 4 + .../v2/perconapgclusters.yaml | 40 + .../v1/alertmanagers.yaml | 40 +- .../monitoring.coreos.com/v1/podmonitors.yaml | 6 +- .../monitoring.coreos.com/v1/probes.yaml | 6 +- .../v1/prometheuses.yaml | 24 +- .../v1/servicemonitors.yaml | 6 +- .../v1/thanosrulers.yaml | 2 +- .../v1alpha1/alertmanagerconfigs.yaml | 480 +- .../v1alpha1/prometheusagents.yaml | 12 +- .../v1alpha1/scrapeconfigs.yaml | 195 +- .../v1beta1/alertmanagerconfigs.yaml | 480 +- .../ceph.rook.io/v1/cephobjectstores.yaml | 47 +- .../rook/ceph.rook.io/v1/cephobjectzones.yaml | 47 +- .../v1alpha1/nodeconfigs.yaml | 9 + .../gloo/gateway.solo.io/v1/gateways.yaml | 32 + .../gloo/gateway.solo.io/v1/httpgateways.yaml | 16 + .../gloo/gateway.solo.io/v1/routeoptions.yaml | 48 + .../gloo/gateway.solo.io/v1/routetables.yaml | 48 + .../v1/virtualhostoptions.yaml | 9 + .../gateway.solo.io/v1/virtualservices.yaml | 57 + .../gloo/gloo.solo.io/v1/upstreams.yaml | 17 + .../submariner.io/v1alpha1/brokers.yaml | 6 + .../v1alpha1/servicediscoveries.yaml | 4 + .../submariner.io/v1alpha1/submariners.yaml | 9 + .../operator.tigera.io/v1/apiservers.yaml | 1 + .../v1/applicationlayers.yaml | 15 + .../v1/intrusiondetections.yaml | 71 + .../v1beta1/tinkerbellclusters.yaml | 4 +- .../v1beta1/tinkerbellmachines.yaml | 8 +- .../v1beta1/tinkerbellmachinetemplates.yaml | 6 +- .../v1alpha1/clusterproperties.rs | 2 +- .../src/acid_zalan_do/v1/postgresteams.rs | 2 +- .../src/acme_cert_manager_io/v1/challenges.rs | 2 +- .../src/acme_cert_manager_io/v1/orders.rs | 2 +- .../v1alpha1/certificateauthorities.rs | 2 +- .../certificateauthorityactivations.rs | 2 +- .../v1alpha1/certificates.rs | 2 +- .../v1alpha1/autoscalinglisteners.rs | 2 +- .../v1alpha1/autoscalingrunnersets.rs | 2 +- .../v1alpha1/ephemeralrunnersets.rs | 2 +- .../v1alpha1/horizontalrunnerautoscalers.rs | 2 +- .../v1alpha1/runnerdeployments.rs | 2 +- .../v1alpha1/runnerreplicasets.rs | 2 +- .../v1alpha1/runners.rs | 2 +- .../v1alpha1/runnersets.rs | 2 +- .../v1alpha3/clusterresourcesetbindings.rs | 2 +- .../v1alpha3/clusterresourcesets.rs | 2 +- .../v1alpha4/clusterresourcesetbindings.rs | 2 +- .../v1alpha4/clusterresourcesets.rs | 2 +- .../v1beta1/clusterresourcesetbindings.rs | 2 +- .../v1beta1/clusterresourcesets.rs | 2 +- .../agent_k8s_elastic_co/v1alpha1/agents.rs | 2 +- .../v1alpha1/awsdatacenterconfigs.rs | 2 +- .../v1alpha1/awsiamconfigs.rs | 2 +- .../v1alpha1/bundles.rs | 2 +- .../v1alpha1/cloudstackdatacenterconfigs.rs | 2 +- .../v1alpha1/cloudstackmachineconfigs.rs | 2 +- .../v1alpha1/clusters.rs | 2 +- .../v1alpha1/controlplaneupgrades.rs | 34 +- .../v1alpha1/dockerdatacenterconfigs.rs | 2 +- .../v1alpha1/eksareleases.rs | 2 +- .../v1alpha1/fluxconfigs.rs | 2 +- .../v1alpha1/gitopsconfigs.rs | 2 +- .../v1alpha1/machinedeploymentupgrades.rs | 34 +- .../v1alpha1/nodeupgrades.rs | 5 +- .../v1alpha1/nutanixdatacenterconfigs.rs | 2 +- .../v1alpha1/nutanixmachineconfigs.rs | 5 +- .../v1alpha1/oidcconfigs.rs | 2 +- .../v1alpha1/snowdatacenterconfigs.rs | 2 +- .../v1alpha1/snowippools.rs | 2 +- .../v1alpha1/snowmachineconfigs.rs | 2 +- .../v1alpha1/tinkerbelldatacenterconfigs.rs | 2 +- .../v1alpha1/tinkerbellmachineconfigs.rs | 2 +- .../v1alpha1/tinkerbelltemplateconfigs.rs | 2 +- .../v1alpha1/vspheredatacenterconfigs.rs | 2 +- .../v1alpha1/vspheremachineconfigs.rs | 2 +- .../v1alpha1/apachewebs.rs | 2 +- .../v1/configproviders.rs | 2 +- .../v1/elasticsearches.rs | 2 +- .../src/api_clever_cloud_com/v1/mongodbs.rs | 2 +- .../src/api_clever_cloud_com/v1/mysqls.rs | 2 +- .../api_clever_cloud_com/v1/postgresqls.rs | 2 +- .../src/api_clever_cloud_com/v1/redis.rs | 2 +- .../api_clever_cloud_com/v1beta1/pulsars.rs | 2 +- .../src/api_kubemod_io/v1beta1/modrules.rs | 2 +- .../v1beta1/apimatics.rs | 2 +- .../v1/compositeresourcedefinitions.rs | 2 +- .../v1alpha1/apis.rs | 2 +- .../v1alpha1/authorizers.rs | 2 +- .../v1alpha1/deployments.rs | 2 +- .../v1alpha1/routes.rs | 2 +- .../v1alpha1/stages.rs | 2 +- .../v1alpha1/vpclinks.rs | 2 +- .../v2/apisixclusterconfigs.rs | 2 +- .../apisix_apache_org/v2/apisixconsumers.rs | 2 +- .../apisix_apache_org/v2/apisixglobalrules.rs | 2 +- .../v2/apisixpluginconfigs.rs | 2 +- .../src/apisix_apache_org/v2/apisixroutes.rs | 2 +- .../src/apisix_apache_org/v2/apisixtlses.rs | 2 +- .../apisix_apache_org/v2/apisixupstreams.rs | 2 +- .../src/apm_k8s_elastic_co/v1/apmservers.rs | 2 +- .../apm_k8s_elastic_co/v1beta1/apmservers.rs | 2 +- .../app_kiegroup_org/v1beta1/kogitobuilds.rs | 2 +- .../app_kiegroup_org/v1beta1/kogitoinfras.rs | 2 +- .../v1beta1/kogitoruntimes.rs | 2 +- .../v1beta1/kogitosupportingservices.rs | 2 +- .../v1alpha1/akkaclusters.rs | 2 +- .../v1/redisenterpriseclusters.rs | 2 +- .../redisenterpriseactiveactivedatabases.rs | 2 +- .../v1alpha1/redisenterpriseclusters.rs | 2 +- .../v1alpha1/redisenterprisedatabases.rs | 2 +- .../v1alpha1/redisenterpriseremoteclusters.rs | 2 +- .../app_terraform_io/v1alpha2/agentpools.rs | 2 +- .../src/app_terraform_io/v1alpha2/modules.rs | 2 +- .../app_terraform_io/v1alpha2/workspaces.rs | 2 +- .../v1alpha1/accesslogpolicies.rs | 2 +- .../v1alpha1/iamauthpolicies.rs | 2 +- .../v1alpha1/serviceexports.rs | 2 +- .../v1alpha1/serviceimports.rs | 2 +- .../v1alpha1/targetgrouppolicies.rs | 2 +- .../v1alpha1/vpcassociationpolicies.rs | 2 +- .../v1alpha1/scalabletargets.rs | 2 +- .../v1alpha1/scalingpolicies.rs | 2 +- .../appmesh_k8s_aws/v1beta2/backendgroups.rs | 2 +- .../appmesh_k8s_aws/v1beta2/gatewayroutes.rs | 2 +- .../src/appmesh_k8s_aws/v1beta2/meshes.rs | 2 +- .../v1beta2/virtualgateways.rs | 2 +- .../appmesh_k8s_aws/v1beta2/virtualnodes.rs | 2 +- .../appmesh_k8s_aws/v1beta2/virtualrouters.rs | 2 +- .../v1beta2/virtualservices.rs | 2 +- .../appprotect_f5_com/v1beta1/aplogconfs.rs | 2 +- .../appprotect_f5_com/v1beta1/apusersigs.rs | 2 +- .../v1beta1/apdoslogconfs.rs | 2 +- .../v1beta1/apdospolicies.rs | 2 +- .../v1beta1/dosprotectedresources.rs | 2 +- .../src/apps_3scale_net/v1alpha1/apicasts.rs | 2 +- .../v1alpha1/apimanagerbackups.rs | 2 +- .../v1alpha1/apimanagerrestores.rs | 2 +- .../apps_3scale_net/v1alpha1/apimanagers.rs | 2 +- .../src/apps_clusternet_io/v1alpha1/bases.rs | 2 +- .../v1alpha1/descriptions.rs | 2 +- .../v1alpha1/feedinventories.rs | 50 +- .../v1alpha1/globalizations.rs | 2 +- .../apps_clusternet_io/v1alpha1/helmcharts.rs | 2 +- .../v1alpha1/helmreleases.rs | 2 +- .../v1alpha1/localizations.rs | 2 +- .../apps_clusternet_io/v1alpha1/manifests.rs | 2 +- .../v1alpha1/subscriptions.rs | 5 +- .../src/apps_emqx_io/v1beta3/emqxbrokers.rs | 2 +- .../apps_emqx_io/v1beta3/emqxenterprises.rs | 2 +- .../src/apps_emqx_io/v1beta3/emqxplugins.rs | 2 +- .../src/apps_emqx_io/v1beta4/emqxbrokers.rs | 2 +- .../apps_emqx_io/v1beta4/emqxenterprises.rs | 2 +- .../src/apps_emqx_io/v1beta4/emqxplugins.rs | 2 +- .../src/apps_emqx_io/v1beta4/rebalances.rs | 2 +- .../src/apps_emqx_io/v2alpha1/emqxes.rs | 2 +- .../src/apps_emqx_io/v2beta1/emqxes.rs | 2 +- .../src/apps_emqx_io/v2beta1/rebalances.rs | 2 +- .../src/apps_gitlab_com/v1beta1/gitlabs.rs | 2 +- .../src/apps_gitlab_com/v1beta2/runners.rs | 2 +- .../v1alpha1/backuppolicytemplates.rs | 2 +- .../v1alpha1/clusterdefinitions.rs | 11 +- .../apps_kubeblocks_io/v1alpha1/clusters.rs | 23 +- .../v1alpha1/clusterversions.rs | 2 +- .../v1alpha1/componentclassdefinitions.rs | 2 +- .../v1alpha1/componentdefinitions.rs | 50 +- .../apps_kubeblocks_io/v1alpha1/components.rs | 8 +- .../v1alpha1/componentversions.rs | 5 +- .../v1alpha1/configconstraints.rs | 26 +- .../v1alpha1/configurations.rs | 9 +- .../v1alpha1/opsdefinitions.rs | 4 +- .../v1alpha1/opsrequests.rs | 2 +- .../v1alpha1/servicedescriptors.rs | 2 +- .../v1beta1/configconstraints.rs | 22 +- .../src/apps_kubedl_io/v1alpha1/crons.rs | 23 +- .../apps_kubeedge_io/v1alpha1/nodegroups.rs | 2 +- .../src/apps_m88i_io/v1alpha1/nexus.rs | 2 +- .../v1alpha1/clusterimpairments.rs | 2 +- .../v1alpha1/aquastarboards.rs | 2 +- .../v1alpha1/clusterconfigauditreports.rs | 2 +- .../v1alpha1/configauditreports.rs | 2 +- .../src/argoproj_io/v1alpha1/applications.rs | 2 +- .../src/argoproj_io/v1alpha1/appprojects.rs | 2 +- .../src/argoproj_io/v1alpha1/argocdexports.rs | 2 +- .../src/argoproj_io/v1alpha1/argocds.rs | 2 +- .../src/argoproj_io/v1beta1/argocds.rs | 2 +- .../v1/aerospikeclusters.rs | 7837 +++++++++++++---- .../v1beta1/aerospikeclusters.rs | 7774 ++++++++++++---- .../src/atlasmap_io/v1alpha1/atlasmaps.rs | 2 +- .../v1alpha1/awsauthsyncconfigs.rs | 2 +- .../authzed_com/v1alpha1/spicedbclusters.rs | 2 +- .../v1alpha1/managedresources.rs | 2 +- .../v1/verticalpodautoscalercheckpoints.rs | 2 +- .../v1/verticalpodautoscalers.rs | 2 +- .../verticalpodautoscalercheckpoints.rs | 2 +- .../v1beta2/verticalpodautoscalers.rs | 2 +- .../v1alpha1/cronfederatedhpas.rs | 2 +- .../v1alpha1/federatedhpas.rs | 2 +- .../src/awx_ansible_com/v1beta1/awxbackups.rs | 2 +- .../awx_ansible_com/v1beta1/awxrestores.rs | 2 +- .../src/awx_ansible_com/v1beta1/awxs.rs | 2 +- .../v1alpha1/apimgmtapis.rs | 2 +- .../v1alpha1/apimservices.rs | 2 +- .../v1alpha1/appinsights.rs | 2 +- .../v1alpha1/appinsightsapikeys.rs | 2 +- .../v1alpha1/azureloadbalancers.rs | 2 +- .../v1alpha1/azurenetworkinterfaces.rs | 2 +- .../v1alpha1/azurepublicipaddresses.rs | 2 +- .../v1alpha1/azuresqlactions.rs | 2 +- .../v1alpha1/azuresqldatabases.rs | 2 +- .../v1alpha1/azuresqlfailovergroups.rs | 2 +- .../v1alpha1/azuresqlfirewallrules.rs | 2 +- .../v1alpha1/azuresqlmanagedusers.rs | 2 +- .../v1alpha1/azuresqlservers.rs | 2 +- .../v1alpha1/azuresqlusers.rs | 2 +- .../v1alpha1/azuresqlvnetrules.rs | 2 +- .../v1alpha1/azurevirtualmachineextensions.rs | 2 +- .../v1alpha1/azurevirtualmachines.rs | 2 +- .../v1alpha1/azurevmscalesets.rs | 2 +- .../v1alpha1/blobcontainers.rs | 2 +- .../v1alpha1/consumergroups.rs | 2 +- .../azure_microsoft_com/v1alpha1/cosmosdbs.rs | 2 +- .../v1alpha1/eventhubnamespaces.rs | 2 +- .../azure_microsoft_com/v1alpha1/eventhubs.rs | 2 +- .../v1alpha1/keyvaultkeys.rs | 2 +- .../azure_microsoft_com/v1alpha1/keyvaults.rs | 2 +- .../v1alpha1/mysqlaadusers.rs | 2 +- .../v1alpha1/mysqldatabases.rs | 2 +- .../v1alpha1/mysqlfirewallrules.rs | 2 +- .../v1alpha1/mysqlserveradministrators.rs | 2 +- .../v1alpha1/mysqlservers.rs | 2 +- .../v1alpha1/mysqlusers.rs | 2 +- .../v1alpha1/mysqlvnetrules.rs | 2 +- .../v1alpha1/postgresqldatabases.rs | 2 +- .../v1alpha1/postgresqlfirewallrules.rs | 2 +- .../v1alpha1/postgresqlservers.rs | 2 +- .../v1alpha1/postgresqlusers.rs | 2 +- .../v1alpha1/postgresqlvnetrules.rs | 2 +- .../v1alpha1/rediscacheactions.rs | 2 +- .../v1alpha1/rediscachefirewallrules.rs | 2 +- .../v1alpha1/resourcegroups.rs | 2 +- .../v1alpha1/storageaccounts.rs | 2 +- .../v1alpha1/virtualnetworks.rs | 2 +- .../v1alpha2/blobcontainers.rs | 2 +- .../v1alpha2/mysqlaadusers.rs | 2 +- .../v1alpha2/mysqlservers.rs | 2 +- .../v1alpha2/mysqlusers.rs | 2 +- .../v1alpha2/postgresqlservers.rs | 2 +- .../v1beta1/azuresqldatabases.rs | 2 +- .../v1beta1/azuresqlfailovergroups.rs | 2 +- .../v1beta1/azuresqlfirewallrules.rs | 2 +- .../v1beta1/azuresqlservers.rs | 2 +- .../src/b3scale_infra_run/v1/bbbfrontends.rs | 2 +- .../src/b3scale_io/v1/bbbfrontends.rs | 2 +- .../src/batch_volcano_sh/v1alpha1/jobs.rs | 2 +- .../src/beat_k8s_elastic_co/v1beta1/beats.rs | 2 +- .../beegfs_csi_netapp_com/v1/beegfsdrivers.rs | 2 +- .../v1alpha1/bindablekinds.rs | 2 +- .../v1alpha1/servicebindings.rs | 2 +- .../src/bitnami_com/v1alpha1/sealedsecrets.rs | 2 +- .../src/bmc_tinkerbell_org/v1alpha1/jobs.rs | 2 +- .../bmc_tinkerbell_org/v1alpha1/machines.rs | 2 +- .../src/bmc_tinkerbell_org/v1alpha1/tasks.rs | 2 +- .../v1/dynamicresourcelifecycles.rs | 2 +- .../src/boskos_k8s_io/v1/resources.rs | 2 +- .../src/bpfman_io/v1alpha1/bpfprograms.rs | 2 +- .../src/bpfman_io/v1alpha1/fentryprograms.rs | 2 +- .../src/bpfman_io/v1alpha1/fexitprograms.rs | 2 +- .../src/bpfman_io/v1alpha1/kprobeprograms.rs | 2 +- .../src/bpfman_io/v1alpha1/tcprograms.rs | 2 +- .../bpfman_io/v1alpha1/tracepointprograms.rs | 2 +- .../src/bpfman_io/v1alpha1/uprobeprograms.rs | 2 +- .../src/bpfman_io/v1alpha1/xdpprograms.rs | 2 +- .../src/bus_volcano_sh/v1alpha1/commands.rs | 2 +- .../cache_kubedl_io/v1alpha1/cachebackends.rs | 2 +- .../v1alpha1/varnishclusters.rs | 2 +- .../src/camel_apache_org/v1/builds.rs | 2 +- .../src/camel_apache_org/v1/camelcatalogs.rs | 2 +- .../src/camel_apache_org/v1/kamelets.rs | 2 +- .../src/camel_apache_org/v1alpha1/kamelets.rs | 2 +- .../v1alpha1/tenants.rs | 2 +- .../v1beta1/activedocs.rs | 5 +- .../v1beta1/applications.rs | 2 +- .../v1beta1/backends.rs | 2 +- .../v1beta1/custompolicydefinitions.rs | 2 +- .../v1beta1/developeraccounts.rs | 2 +- .../v1beta1/developerusers.rs | 2 +- .../v1beta1/openapis.rs | 5 +- .../v1beta1/products.rs | 2 +- .../v1beta1/proxyconfigpromotes.rs | 2 +- .../v1alpha1/capsuleconfigurations.rs | 2 +- .../capsule_clastix_io/v1alpha1/tenants.rs | 2 +- .../src/capsule_clastix_io/v1beta1/tenants.rs | 2 +- .../v1beta2/capsuleconfigurations.rs | 2 +- .../src/capsule_clastix_io/v1beta2/tenants.rs | 2 +- .../v1beta1/cassandradatacenters.rs | 59 +- .../v1/cephblockpoolradosnamespaces.rs | 2 +- .../src/ceph_rook_io/v1/cephblockpools.rs | 2 +- .../v1/cephbucketnotifications.rs | 2 +- .../src/ceph_rook_io/v1/cephbuckettopics.rs | 2 +- .../src/ceph_rook_io/v1/cephclients.rs | 2 +- .../src/ceph_rook_io/v1/cephcosidrivers.rs | 2 +- .../ceph_rook_io/v1/cephfilesystemmirrors.rs | 2 +- .../src/ceph_rook_io/v1/cephfilesystems.rs | 2 +- .../v1/cephfilesystemsubvolumegroups.rs | 2 +- .../src/ceph_rook_io/v1/cephnfses.rs | 2 +- .../src/ceph_rook_io/v1/cephobjectrealms.rs | 2 +- .../src/ceph_rook_io/v1/cephobjectstores.rs | 55 +- .../ceph_rook_io/v1/cephobjectstoreusers.rs | 2 +- .../ceph_rook_io/v1/cephobjectzonegroups.rs | 2 +- .../src/ceph_rook_io/v1/cephobjectzones.rs | 55 +- .../src/ceph_rook_io/v1/cephrbdmirrors.rs | 2 +- .../cert_manager_io/v1/certificaterequests.rs | 2 +- .../src/cert_manager_io/v1/certificates.rs | 2 +- .../src/cert_manager_io/v1/clusterissuers.rs | 2 +- .../src/cert_manager_io/v1/issuers.rs | 2 +- .../v1alpha1/configurations.rs | 2 +- .../src/chainsaw_kyverno_io/v1alpha1/tests.rs | 2 +- .../v1alpha2/configurations.rs | 2 +- .../src/chainsaw_kyverno_io/v1alpha2/tests.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/awschaos.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/azurechaos.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/blockchaos.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/dnschaos.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/gcpchaos.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/httpchaos.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/iochaos.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/jvmchaos.rs | 2 +- .../chaos_mesh_org/v1alpha1/kernelchaos.rs | 2 +- .../chaos_mesh_org/v1alpha1/networkchaos.rs | 2 +- .../v1alpha1/physicalmachinechaos.rs | 2 +- .../v1alpha1/physicalmachines.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/podchaos.rs | 2 +- .../chaos_mesh_org/v1alpha1/podhttpchaos.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/podiochaos.rs | 2 +- .../v1alpha1/podnetworkchaos.rs | 2 +- .../chaos_mesh_org/v1alpha1/remoteclusters.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/schedules.rs | 32 +- .../chaos_mesh_org/v1alpha1/statuschecks.rs | 2 +- .../chaos_mesh_org/v1alpha1/stresschaos.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/timechaos.rs | 2 +- .../chaos_mesh_org/v1alpha1/workflownodes.rs | 2 +- .../src/chaos_mesh_org/v1alpha1/workflows.rs | 2 +- .../src/chaosblade_io/v1alpha1/chaosblades.rs | 2 +- .../src/charts_amd_com/v1alpha1/amdgpus.rs | 2 +- .../v1alpha1/flagsmiths.rs | 2 +- .../v1alpha1/snykmonitors.rs | 2 +- .../src/charts_opdev_io/v1alpha1/synapses.rs | 2 +- .../v1alpha1/cockroachdbs.rs | 2 +- .../v1alpha1/kubernetesimagepullers.rs | 2 +- .../v1/exitnodeprovisioners.rs | 2 +- .../src/chisel_operator_io/v1/exitnodes.rs | 2 +- .../src/chisel_operator_io/v2/exitnodes.rs | 2 +- .../v2/ciliumclusterwidenetworkpolicies.rs | 3335 +++++-- .../v2/ciliumegressgatewaypolicies.rs | 119 +- .../src/cilium_io/v2/ciliumendpoints.rs | 60 +- .../cilium_io/v2/ciliumexternalworkloads.rs | 11 +- .../src/cilium_io/v2/ciliumidentities.rs | 2 +- .../v2/ciliumlocalredirectpolicies.rs | 128 +- .../src/cilium_io/v2/ciliumnetworkpolicies.rs | 3328 +++++-- .../src/cilium_io/v2/ciliumnodes.rs | 269 +- .../v2alpha1/ciliumbgppeeringpolicies.rs | 221 +- .../cilium_io/v2alpha1/ciliumcidrgroups.rs | 2 +- .../v2alpha1/ciliumendpointslices.rs | 22 +- .../v2alpha1/ciliuml2announcementpolicies.rs | 80 +- .../v2alpha1/ciliumloadbalancerippools.rs | 40 +- .../cilium_io/v2alpha1/ciliumnodeconfigs.rs | 2 +- .../cilium_io/v2alpha1/ciliumpodippools.rs | 2 +- .../src/claudie_io/v1beta1/inputmanifests.rs | 2 +- .../v1alpha1/stacks.rs | 2 +- .../v1alpha1/cachepolicies.rs | 2 +- .../v1alpha1/distributions.rs | 2 +- .../v1alpha1/functions.rs | 2 +- .../v1alpha1/originrequestpolicies.rs | 2 +- .../v1alpha1/responseheaderspolicies.rs | 2 +- .../v1alpha1/eventdatastores.rs | 2 +- .../v1alpha1/trails.rs | 2 +- .../v1alpha1/amazoncloudwatchagents.rs | 2 +- .../v1alpha1/instrumentations.rs | 2 +- .../v1alpha1/metricalarms.rs | 2 +- .../v1alpha1/loggroups.rs | 2 +- .../v1alpha2/clustersyncresources.rs | 2 +- .../v1alpha2/pediaclusters.rs | 2 +- .../cluster_ipfs_io/v1alpha1/circuitrelays.rs | 2 +- .../cluster_ipfs_io/v1alpha1/ipfsclusters.rs | 2 +- .../src/cluster_x_k8s_io/v1alpha3/clusters.rs | 7 +- .../v1alpha3/machinedeployments.rs | 7 +- .../v1alpha3/machinehealthchecks.rs | 5 +- .../cluster_x_k8s_io/v1alpha3/machinepools.rs | 46 +- .../src/cluster_x_k8s_io/v1alpha3/machines.rs | 9 +- .../cluster_x_k8s_io/v1alpha3/machinesets.rs | 7 +- .../v1alpha4/clusterclasses.rs | 13 +- .../src/cluster_x_k8s_io/v1alpha4/clusters.rs | 7 +- .../v1alpha4/machinedeployments.rs | 7 +- .../v1alpha4/machinehealthchecks.rs | 5 +- .../cluster_x_k8s_io/v1alpha4/machinepools.rs | 46 +- .../src/cluster_x_k8s_io/v1alpha4/machines.rs | 9 +- .../cluster_x_k8s_io/v1alpha4/machinesets.rs | 7 +- .../v1beta1/clusterclasses.rs | 21 +- .../src/cluster_x_k8s_io/v1beta1/clusters.rs | 11 +- .../v1beta1/machinedeployments.rs | 7 +- .../v1beta1/machinehealthchecks.rs | 5 +- .../cluster_x_k8s_io/v1beta1/machinepools.rs | 46 +- .../src/cluster_x_k8s_io/v1beta1/machines.rs | 9 +- .../cluster_x_k8s_io/v1beta1/machinesets.rs | 7 +- .../v1beta1/clusterregistrationrequests.rs | 2 +- .../v1beta1/managedclusters.rs | 2 +- .../v1alpha1/clustertemplateinstances.rs | 2 +- .../v1alpha1/clustertemplatequotas.rs | 2 +- .../v1alpha1/clustertemplates.rs | 2 +- .../v1alpha1/clustertemplatesetup.rs | 2 +- .../v1alpha1/config.rs | 2 +- .../v1beta1/ccruntimes.rs | 2 +- .../config_gatekeeper_sh/v1alpha1/configs.rs | 2 +- .../config_grafana_com/v1/projectconfigs.rs | 2 +- .../resourceinterpretercustomizations.rs | 16 +- ...esourceinterpreterwebhookconfigurations.rs | 2 +- .../v1alpha1/clustercolocationprofiles.rs | 2 +- .../v1/operatorconfigs.rs | 2 +- .../v1alpha1/cassandratasks.rs | 5 +- .../v1alpha1/clustercollectedstatuses.rs | 2 +- .../v1alpha1/clusterfederatedobjects.rs | 2 +- .../v1alpha1/clusteroverridepolicies.rs | 2 +- .../v1alpha1/clusterpropagatedversions.rs | 2 +- .../v1alpha1/clusterpropagationpolicies.rs | 2 +- .../v1alpha1/collectedstatuses.rs | 2 +- .../v1alpha1/federatedclusters.rs | 2 +- .../v1alpha1/federatedobjects.rs | 2 +- .../v1alpha1/federatedtypeconfigs.rs | 2 +- .../v1alpha1/overridepolicies.rs | 2 +- .../v1alpha1/propagatedversions.rs | 2 +- .../v1alpha1/propagationpolicies.rs | 2 +- .../schedulerpluginwebhookconfigurations.rs | 2 +- .../v1alpha1/schedulingprofiles.rs | 2 +- .../v1alpha1/atests.rs | 2 +- .../v1alpha1/featureflagconfigurations.rs | 5 +- .../v1alpha2/featureflagconfigurations.rs | 5 +- .../couchbase_com/v2/couchbaseautoscalers.rs | 2 +- .../v2/couchbasebackuprestores.rs | 2 +- .../src/couchbase_com/v2/couchbasebackups.rs | 2 +- .../src/couchbase_com/v2/couchbasebuckets.rs | 2 +- .../src/couchbase_com/v2/couchbaseclusters.rs | 2 +- .../v2/couchbasecollectiongroups.rs | 2 +- .../couchbase_com/v2/couchbasecollections.rs | 2 +- .../v2/couchbaseephemeralbuckets.rs | 2 +- .../src/couchbase_com/v2/couchbasegroups.rs | 2 +- .../v2/couchbasememcachedbuckets.rs | 2 +- .../v2/couchbasemigrationreplications.rs | 2 +- .../couchbase_com/v2/couchbasereplications.rs | 2 +- .../couchbase_com/v2/couchbaserolebindings.rs | 2 +- .../couchbase_com/v2/couchbasescopegroups.rs | 2 +- .../src/couchbase_com/v2/couchbasescopes.rs | 2 +- .../src/couchbase_com/v2/couchbaseusers.rs | 2 +- .../v1alpha1/sopssecrets.rs | 2 +- .../v1alpha1/operatorconfigs.rs | 2 +- .../v1/bgpconfigurations.rs | 2 +- .../crd_projectcalico_org/v1/bgpfilters.rs | 2 +- .../src/crd_projectcalico_org/v1/bgppeers.rs | 2 +- .../v1/blockaffinities.rs | 2 +- .../v1/caliconodestatuses.rs | 2 +- .../v1/clusterinformations.rs | 2 +- .../v1/globalnetworksets.rs | 2 +- .../crd_projectcalico_org/v1/hostendpoints.rs | 2 +- .../crd_projectcalico_org/v1/ipamblocks.rs | 2 +- .../crd_projectcalico_org/v1/ipamconfigs.rs | 2 +- .../crd_projectcalico_org/v1/ipamhandles.rs | 2 +- .../src/crd_projectcalico_org/v1/ippools.rs | 2 +- .../v1/ipreservations.rs | 2 +- .../v1/kubecontrollersconfigurations.rs | 2 +- .../crd_projectcalico_org/v1/networksets.rs | 2 +- .../src/crd_projectcalico_org/v1/tiers.rs | 2 +- .../data_fluid_io/v1alpha1/alluxioruntimes.rs | 2 +- .../src/data_fluid_io/v1alpha1/databackups.rs | 2 +- .../src/data_fluid_io/v1alpha1/dataloads.rs | 2 +- .../src/data_fluid_io/v1alpha1/datasets.rs | 2 +- .../data_fluid_io/v1alpha1/goosefsruntimes.rs | 2 +- .../data_fluid_io/v1alpha1/jindoruntimes.rs | 2 +- .../data_fluid_io/v1alpha1/juicefsruntimes.rs | 2 +- .../v1alpha1/thinruntimeprofiles.rs | 2 +- .../data_fluid_io/v1alpha1/thinruntimes.rs | 2 +- .../v1alpha4/databases.rs | 2 +- .../v1/redisfailovers.rs | 2 +- .../datadoghq_com/v1alpha1/datadogagents.rs | 2 +- .../datadoghq_com/v1alpha1/datadogmetrics.rs | 2 +- .../datadoghq_com/v1alpha1/datadogmonitors.rs | 2 +- .../src/datadoghq_com/v1alpha1/datadogslos.rs | 2 +- .../datadoghq_com/v2alpha1/datadogagents.rs | 2 +- .../v1alpha1/actionsets.rs | 2 +- .../v1alpha1/backuppolicies.rs | 2 +- .../v1alpha1/backuprepos.rs | 2 +- .../v1alpha1/backups.rs | 5 +- .../v1alpha1/backupschedules.rs | 2 +- .../v1alpha1/restores.rs | 2 +- .../src/designer_kaoto_io/v1alpha1/kaotoes.rs | 2 +- .../v1alpha2/devicemodels.rs | 2 +- .../devices_kubeedge_io/v1alpha2/devices.rs | 2 +- .../v1beta1/devicemodels.rs | 2 +- .../devices_kubeedge_io/v1beta1/devices.rs | 2 +- .../v1alpha1/releasercontrollers.rs | 2 +- .../v1alpha1/releasers.rs | 2 +- .../src/dex_coreos_com/v1/authcodes.rs | 2 +- .../src/dex_coreos_com/v1/authrequests.rs | 2 +- .../src/dex_coreos_com/v1/connectors.rs | 2 +- .../src/dex_coreos_com/v1/devicerequests.rs | 2 +- .../src/dex_coreos_com/v1/devicetokens.rs | 2 +- .../src/dex_coreos_com/v1/oauth2clients.rs | 2 +- .../dex_coreos_com/v1/offlinesessionses.rs | 2 +- .../src/dex_coreos_com/v1/passwords.rs | 2 +- .../src/dex_coreos_com/v1/refreshtokens.rs | 2 +- .../src/dex_coreos_com/v1/signingkeies.rs | 2 +- .../v1alpha1/dexidentityproviders.rs | 2 +- .../v1alpha1/dexoauth2clients.rs | 2 +- .../dex_gpu_ninja_com/v1alpha1/dexusers.rs | 2 +- .../src/digitalis_io/v1/valssecrets.rs | 2 +- .../src/digitalis_io/v1beta1/dbsecrets.rs | 2 +- .../v1alpha1/dbclusters.rs | 2 +- .../v1alpha1/dbinstances.rs | 2 +- .../v1alpha1/dbsubnetgroups.rs | 2 +- .../src/druid_apache_org/v1alpha1/druids.rs | 32 +- .../v1alpha1/backups.rs | 2 +- .../v1alpha1/globaltables.rs | 2 +- .../v1alpha1/tables.rs | 2 +- .../v1alpha1/dhcpoptions.rs | 2 +- .../v1alpha1/elasticipaddresses.rs | 2 +- .../v1alpha1/instances.rs | 2 +- .../v1alpha1/internetgateways.rs | 2 +- .../v1alpha1/natgateways.rs | 2 +- .../v1alpha1/routetables.rs | 2 +- .../v1alpha1/securitygroups.rs | 2 +- .../ec2_services_k8s_aws/v1alpha1/subnets.rs | 2 +- .../v1alpha1/transitgateways.rs | 2 +- .../v1alpha1/vpcendpoints.rs | 2 +- .../src/ec2_services_k8s_aws/v1alpha1/vpcs.rs | 2 +- .../v1alpha1/pullthroughcacherules.rs | 2 +- .../v1alpha1/repositories.rs | 2 +- .../v1alpha1/accesspoints.rs | 2 +- .../v1alpha1/filesystems.rs | 2 +- .../v1alpha1/mounttargets.rs | 2 +- .../eks_services_k8s_aws/v1alpha1/addons.rs | 2 +- .../eks_services_k8s_aws/v1alpha1/clusters.rs | 2 +- .../v1alpha1/fargateprofiles.rs | 2 +- .../v1alpha1/nodegroups.rs | 2 +- .../v1alpha1/cacheparametergroups.rs | 2 +- .../v1alpha1/cachesubnetgroups.rs | 2 +- .../v1alpha1/replicationgroups.rs | 2 +- .../v1alpha1/snapshots.rs | 2 +- .../v1alpha1/usergroups.rs | 2 +- .../v1alpha1/users.rs | 2 +- .../v1/elasticsearches.rs | 2 +- .../v1beta1/elasticsearches.rs | 2 +- .../v1alpha1/targetgroupbindings.rs | 2 +- .../v1beta1/ingressclassparams.rs | 2 +- .../v1beta1/targetgroupbindings.rs | 2 +- .../v1alpha1/jobruns.rs | 2 +- .../v1alpha1/virtualclusters.rs | 2 +- .../src/ensembleoss_io/v1/clusters.rs | 2 +- .../src/ensembleoss_io/v1/resources.rs | 2 +- .../v1/enterprisesearches.rs | 2 +- .../v1beta1/enterprisesearches.rs | 2 +- .../v1alpha1/backupstorages.rs | 2 +- .../v1alpha1/databaseclusterbackups.rs | 2 +- .../v1alpha1/databaseclusterrestores.rs | 2 +- .../v1alpha1/databaseclusters.rs | 5 +- .../v1alpha1/monitoringconfigs.rs | 2 +- .../v1alpha1/jobconfigs.rs | 2 +- .../src/execution_furiko_io/v1alpha1/jobs.rs | 2 +- .../src/executor_testkube_io/v1/executors.rs | 2 +- .../src/executor_testkube_io/v1/webhooks.rs | 2 +- .../v1alpha1/expansiontemplate.rs | 2 +- .../v1beta1/expansiontemplate.rs | 2 +- .../v1alpha1/wasmplugins.rs | 2 +- .../v1alpha1/addons.rs | 2 +- .../v1alpha1/clustersecretstores.rs | 2 +- .../v1alpha1/externalsecrets.rs | 2 +- .../v1alpha1/secretstores.rs | 2 +- .../v1beta1/clusterexternalsecrets.rs | 2 +- .../v1beta1/clustersecretstores.rs | 2 +- .../v1beta1/externalsecrets.rs | 2 +- .../v1beta1/secretstores.rs | 2 +- .../v1alpha1/providers.rs | 2 +- .../v1beta1/providers.rs | 2 +- .../v1alpha1/dnsendpoints.rs | 2 +- .../externaldns_nginx_org/v1/dnsendpoints.rs | 2 +- .../src/flagger_app/v1beta1/alertproviders.rs | 2 +- .../src/flagger_app/v1beta1/canaries.rs | 2 +- .../flagger_app/v1beta1/metrictemplates.rs | 2 +- .../v1beta1/flinkdeployments.rs | 2 +- .../v1beta1/flinksessionjobs.rs | 2 +- .../src/flow_volcano_sh/v1alpha1/jobflows.rs | 2 +- .../flow_volcano_sh/v1alpha1/jobtemplates.rs | 2 +- .../v1alpha1/flowcollectors.rs | 2 +- .../v1beta1/flowcollectors.rs | 61 +- .../v1beta2/flowcollectors.rs | 117 +- .../v1alpha2/clusterfilters.rs | 2 +- .../v1alpha2/clusterfluentbitconfigs.rs | 2 +- .../v1alpha2/clusterinputs.rs | 2 +- .../v1alpha2/clusteroutputs.rs | 78 +- .../v1alpha2/clusterparsers.rs | 2 +- .../v1alpha2/collectors.rs | 2 +- .../fluentbit_fluent_io/v1alpha2/filters.rs | 2 +- .../v1alpha2/fluentbitconfigs.rs | 2 +- .../v1alpha2/fluentbits.rs | 2 +- .../fluentbit_fluent_io/v1alpha2/outputs.rs | 78 +- .../fluentbit_fluent_io/v1alpha2/parsers.rs | 2 +- .../v1alpha1/clusterfilters.rs | 2 +- .../v1alpha1/clusterfluentdconfigs.rs | 2 +- .../v1alpha1/clusterinputs.rs | 2 +- .../v1alpha1/clusteroutputs.rs | 2 +- .../src/fluentd_fluent_io/v1alpha1/filters.rs | 2 +- .../v1alpha1/fluentdconfigs.rs | 2 +- .../fluentd_fluent_io/v1alpha1/fluentds.rs | 2 +- .../src/fluentd_fluent_io/v1alpha1/inputs.rs | 2 +- .../src/fluentd_fluent_io/v1alpha1/outputs.rs | 2 +- .../v1alpha1/miniclusters.rs | 2 +- .../v1alpha2/miniclusters.rs | 2 +- .../v1beta1/forkliftcontrollers.rs | 2 +- .../src/forklift_konveyor_io/v1beta1/hooks.rs | 2 +- .../src/forklift_konveyor_io/v1beta1/hosts.rs | 7 +- .../v1beta1/migrations.rs | 9 +- .../v1beta1/networkmaps.rs | 7 +- .../v1beta1/openstackvolumepopulators.rs | 5 +- .../v1beta1/ovirtvolumepopulators.rs | 5 +- .../src/forklift_konveyor_io/v1beta1/plans.rs | 23 +- .../forklift_konveyor_io/v1beta1/providers.rs | 5 +- .../v1beta1/storagemaps.rs | 7 +- .../src/fossul_io/v1/backupconfigs.rs | 2 +- .../src/fossul_io/v1/backups.rs | 2 +- .../src/fossul_io/v1/backupschedules.rs | 2 +- .../src/fossul_io/v1/fossuls.rs | 2 +- .../src/fossul_io/v1/restores.rs | 2 +- .../v1/gatewayclasses.rs | 2 +- .../gateway_networking_k8s_io/v1/gateways.rs | 2 +- .../v1/grpcroutes.rs | 6 +- .../v1/httproutes.rs | 8 +- .../v1alpha2/grpcroutes.rs | 6 +- .../v1alpha2/referencegrants.rs | 2 +- .../v1alpha2/tcproutes.rs | 2 +- .../v1alpha2/tlsroutes.rs | 2 +- .../v1alpha2/udproutes.rs | 2 +- .../v1beta1/gatewayclasses.rs | 2 +- .../v1beta1/gateways.rs | 2 +- .../v1beta1/httproutes.rs | 8 +- .../v1beta1/referencegrants.rs | 2 +- .../v1alpha1/clientsettingspolicies.rs | 2 +- .../v1alpha1/nginxgateways.rs | 2 +- .../v1alpha1/nginxproxies.rs | 65 +- .../v1alpha1/observabilitypolicies.rs | 2 +- .../getambassador_io/v3alpha1/authservices.rs | 2 +- .../v3alpha1/consulresolvers.rs | 2 +- .../getambassador_io/v3alpha1/devportals.rs | 2 +- .../src/getambassador_io/v3alpha1/hosts.rs | 2 +- .../v3alpha1/kubernetesendpointresolvers.rs | 2 +- .../v3alpha1/kubernetesserviceresolvers.rs | 2 +- .../getambassador_io/v3alpha1/listeners.rs | 2 +- .../getambassador_io/v3alpha1/logservices.rs | 2 +- .../src/getambassador_io/v3alpha1/modules.rs | 2 +- .../v3alpha1/ratelimitservices.rs | 2 +- .../getambassador_io/v3alpha1/tcpmappings.rs | 2 +- .../getambassador_io/v3alpha1/tlscontexts.rs | 2 +- .../v3alpha1/tracingservices.rs | 2 +- .../v1alpha1/patterns.rs | 2 +- .../v1beta1/grafanadashboards.rs | 2 +- .../v1beta1/grafanadatasources.rs | 2 +- .../v1beta1/grafanafolders.rs | 2 +- .../v1alpha1/volumegroupsnapshotclasses.rs | 2 +- .../v1alpha1/volumegroupsnapshotcontents.rs | 5 +- .../v1alpha1/volumegroupsnapshots.rs | 2 +- .../hazelcast_com/v1alpha1/cronhotbackups.rs | 2 +- .../src/hazelcast_com/v1alpha1/hazelcasts.rs | 2 +- .../src/hazelcast_com/v1alpha1/hotbackups.rs | 2 +- .../v1alpha1/managementcenters.rs | 2 +- .../src/hazelcast_com/v1alpha1/maps.rs | 2 +- .../hazelcast_com/v1alpha1/wanreplications.rs | 2 +- .../src/helm_sigstore_dev/v1alpha1/rekors.rs | 2 +- .../helm_toolkit_fluxcd_io/v2/helmreleases.rs | 2 +- .../v2beta1/helmreleases.rs | 2 +- .../v2beta2/helmreleases.rs | 2 +- .../src/hive_openshift_io/v1/checkpoints.rs | 2 +- .../src/hive_openshift_io/v1/clusterclaims.rs | 2 +- .../v1/clusterdeploymentcustomizations.rs | 2 +- .../v1/clusterdeployments.rs | 2 +- .../v1/clusterdeprovisions.rs | 2 +- .../hive_openshift_io/v1/clusterimagesets.rs | 2 +- .../src/hive_openshift_io/v1/clusterpools.rs | 2 +- .../hive_openshift_io/v1/clusterprovisions.rs | 2 +- .../hive_openshift_io/v1/clusterrelocates.rs | 2 +- .../src/hive_openshift_io/v1/clusterstates.rs | 2 +- .../src/hive_openshift_io/v1/dnszones.rs | 2 +- .../src/hive_openshift_io/v1/hiveconfigs.rs | 2 +- .../v1/machinepoolnameleases.rs | 2 +- .../src/hive_openshift_io/v1/machinepools.rs | 12 +- .../v1/selectorsyncidentityproviders.rs | 2 +- .../v1/syncidentityproviders.rs | 2 +- .../v1alpha1/clustersyncleases.rs | 2 +- .../v1alpha1/clustersyncs.rs | 2 +- .../v1alpha1/fakeclusterinstalls.rs | 2 +- .../v1alpha2/hierarchicalresourcequotas.rs | 2 +- .../v1alpha2/hierarchyconfigurations.rs | 2 +- .../v1alpha2/hncconfigurations.rs | 2 +- .../v1alpha2/subnamespaceanchors.rs | 2 +- .../src/hyperfoil_io/v1alpha1/horreums.rs | 2 +- .../src/hyperfoil_io/v1alpha2/hyperfoils.rs | 2 +- .../iam_services_k8s_aws/v1alpha1/groups.rs | 2 +- .../v1alpha1/instanceprofiles.rs | 2 +- .../v1alpha1/openidconnectproviders.rs | 2 +- .../iam_services_k8s_aws/v1alpha1/policies.rs | 2 +- .../iam_services_k8s_aws/v1alpha1/roles.rs | 2 +- .../iam_services_k8s_aws/v1alpha1/users.rs | 2 +- .../ibmcloud_ibm_com/v1alpha1/composables.rs | 2 +- .../v1beta1/imagepolicies.rs | 2 +- .../v1beta1/imagerepositories.rs | 12 +- .../v1beta1/imageupdateautomations.rs | 8 +- .../v1beta2/imagepolicies.rs | 2 +- .../v1beta2/imagerepositories.rs | 26 +- .../v1beta2/imageupdateautomations.rs | 8 +- .../v1alpha1/dicomeventbridges.rs | 2 +- .../v1alpha1/dicomeventdriveningestions.rs | 2 +- .../v1alpha1/dicominstancebindings.rs | 2 +- .../v1alpha1/dicomstudybindings.rs | 2 +- .../v1alpha1/dicomwebingestionservices.rs | 2 +- .../v1alpha1/dimseingestionservices.rs | 2 +- .../v1alpha1/dimseproxies.rs | 2 +- .../v1alpha1/elasticbatchjobs.rs | 2 +- .../src/infinispan_org/v1/infinispans.rs | 5 +- .../src/infinispan_org/v2alpha1/backups.rs | 2 +- .../src/infinispan_org/v2alpha1/batches.rs | 2 +- .../src/infinispan_org/v2alpha1/caches.rs | 2 +- .../src/infinispan_org/v2alpha1/restores.rs | 2 +- .../v1alpha1/terraforms.rs | 2 +- .../v1alpha2/terraforms.rs | 2 +- .../v1alpha1/kubevirtclusters.rs | 7 +- .../v1alpha1/kubevirtclustertemplates.rs | 7 +- .../v1alpha1/kubevirtmachines.rs | 5 +- .../v1alpha1/kubevirtmachinetemplates.rs | 5 +- .../v1alpha3/vsphereclusteridentities.rs | 2 +- .../v1alpha3/vsphereclusters.rs | 5 +- .../v1alpha3/vspheredeploymentzones.rs | 2 +- .../v1alpha3/vspherefailuredomains.rs | 2 +- .../v1alpha3/vspheremachines.rs | 2 +- .../v1alpha3/vspheremachinetemplates.rs | 2 +- .../v1alpha3/vspherevms.rs | 5 +- .../v1alpha4/vsphereclusteridentities.rs | 2 +- .../v1alpha4/vsphereclusters.rs | 2 +- .../v1alpha4/vsphereclustertemplates.rs | 2 +- .../v1alpha4/vspheredeploymentzones.rs | 2 +- .../v1alpha4/vspherefailuredomains.rs | 2 +- .../v1alpha4/vspheremachines.rs | 2 +- .../v1alpha4/vspheremachinetemplates.rs | 2 +- .../v1alpha4/vspherevms.rs | 5 +- .../v1beta1/ibmpowervsclusters.rs | 2 +- .../v1beta1/ibmpowervsclustertemplates.rs | 2 +- .../v1beta1/ibmpowervsimages.rs | 2 +- .../v1beta1/ibmpowervsmachines.rs | 2 +- .../v1beta1/ibmpowervsmachinetemplates.rs | 2 +- .../v1beta1/ibmvpcclusters.rs | 2 +- .../v1beta1/ibmvpcmachines.rs | 2 +- .../v1beta1/ibmvpcmachinetemplates.rs | 2 +- .../v1beta1/tinkerbellclusters.rs | 4 +- .../v1beta1/tinkerbellmachines.rs | 4 +- .../v1beta1/tinkerbellmachinetemplates.rs | 2 +- .../v1beta1/vsphereclusteridentities.rs | 2 +- .../v1beta1/vsphereclusters.rs | 2 +- .../v1beta1/vsphereclustertemplates.rs | 2 +- .../v1beta1/vspheredeploymentzones.rs | 2 +- .../v1beta1/vspherefailuredomains.rs | 2 +- .../v1beta1/vspheremachines.rs | 2 +- .../v1beta1/vspheremachinetemplates.rs | 2 +- .../v1beta1/vspherevms.rs | 5 +- .../v1beta2/ibmpowervsclusters.rs | 30 +- .../v1beta2/ibmpowervsclustertemplates.rs | 2 +- .../v1beta2/ibmpowervsimages.rs | 2 +- .../v1beta2/ibmpowervsmachines.rs | 2 +- .../v1beta2/ibmpowervsmachinetemplates.rs | 2 +- .../v1beta2/ibmvpcclusters.rs | 2 +- .../v1beta2/ibmvpcmachines.rs | 2 +- .../v1beta2/ibmvpcmachinetemplates.rs | 2 +- .../v1alpha1/istiooperators.rs | 2 +- .../v1beta1/mattermosts.rs | 2 +- .../src/instana_io/v1/agents.rs | 2 +- .../v1beta1/deferredresources.rs | 2 +- .../integration_rock8s_com/v1beta1/plugs.rs | 2 +- .../integration_rock8s_com/v1beta1/sockets.rs | 2 +- .../src/iot_eclipse_org/v1alpha1/dittos.rs | 2 +- .../src/iot_eclipse_org/v1alpha1/hawkbits.rs | 2 +- .../v1alpha1/ipaddressclaims.rs | 2 +- .../v1alpha1/ipaddresses.rs | 2 +- .../v1beta1/ipaddressclaims.rs | 2 +- .../v1beta1/ipaddresses.rs | 2 +- .../v1alpha1/sopssecrets.rs | 2 +- .../v1alpha2/sopssecrets.rs | 2 +- .../v1alpha3/sopssecrets.rs | 2 +- .../src/jaegertracing_io/v1/jaegers.rs | 2 +- .../src/jobset_x_k8s_io/v1alpha2/jobsets.rs | 2 +- .../v1beta1/managedjobs.rs | 2 +- .../src/k6_io/v1alpha1/k6s.rs | 2 +- .../src/k6_io/v1alpha1/privateloadzones.rs | 2 +- .../src/k6_io/v1alpha1/testruns.rs | 2 +- .../src/k8gb_absa_oss/v1beta1/gslbs.rs | 2 +- .../v2alpha1/keycloakrealmimports.rs | 2 +- .../k8s_keycloak_org/v2alpha1/keycloaks.rs | 2 +- .../src/k8s_mariadb_com/v1alpha1/backups.rs | 2 +- .../k8s_mariadb_com/v1alpha1/connections.rs | 5 +- .../src/k8s_mariadb_com/v1alpha1/databases.rs | 2 +- .../src/k8s_mariadb_com/v1alpha1/grants.rs | 2 +- .../src/k8s_mariadb_com/v1alpha1/mariadbs.rs | 8 +- .../src/k8s_mariadb_com/v1alpha1/maxscales.rs | 2 +- .../src/k8s_mariadb_com/v1alpha1/restores.rs | 2 +- .../src/k8s_mariadb_com/v1alpha1/sqljobs.rs | 2 +- .../src/k8s_mariadb_com/v1alpha1/users.rs | 2 +- .../k8s_nginx_org/v1/globalconfigurations.rs | 2 +- .../src/k8s_nginx_org/v1/policies.rs | 2 +- .../src/k8s_nginx_org/v1/transportservers.rs | 2 +- .../k8s_nginx_org/v1/virtualserverroutes.rs | 2 +- .../src/k8s_nginx_org/v1/virtualservers.rs | 2 +- .../v1alpha1/globalconfigurations.rs | 2 +- .../src/k8s_nginx_org/v1alpha1/policies.rs | 2 +- .../v1alpha1/transportservers.rs | 2 +- .../v1alpha2/clientintents.rs | 2 +- .../v1alpha2/kafkaserverconfigs.rs | 2 +- .../v1alpha2/protectedservices.rs | 2 +- .../v1alpha3/clientintents.rs | 2 +- .../v1alpha3/kafkaserverconfigs.rs | 2 +- .../v1alpha3/protectedservices.rs | 2 +- .../src/k8up_io/v1/archives.rs | 2 +- .../src/k8up_io/v1/backups.rs | 2 +- .../src/k8up_io/v1/checks.rs | 2 +- .../src/k8up_io/v1/prebackuppods.rs | 2 +- .../src/k8up_io/v1/prunes.rs | 2 +- .../src/k8up_io/v1/restores.rs | 2 +- .../src/k8up_io/v1/schedules.rs | 2 +- .../src/k8up_io/v1/snapshots.rs | 2 +- .../v1alpha1/cruisecontroloperations.rs | 2 +- .../v1alpha1/kafkatopics.rs | 2 +- .../v1alpha1/kafkausers.rs | 2 +- .../v1beta1/kafkaclusters.rs | 2 +- .../v1alpha1/clusters.rs | 2 +- .../kafka_strimzi_io/v1alpha1/kafkatopics.rs | 2 +- .../kafka_strimzi_io/v1alpha1/kafkausers.rs | 2 +- .../kafka_strimzi_io/v1beta1/kafkatopics.rs | 2 +- .../kafka_strimzi_io/v1beta1/kafkausers.rs | 2 +- .../kafka_strimzi_io/v1beta2/kafkabridges.rs | 2 +- .../v1beta2/kafkaconnectors.rs | 2 +- .../kafka_strimzi_io/v1beta2/kafkaconnects.rs | 2 +- .../v1beta2/kafkamirrormakers.rs | 2 +- .../v1beta2/kafkanodepools.rs | 2 +- .../v1beta2/kafkarebalances.rs | 2 +- .../src/kafka_strimzi_io/v1beta2/kafkas.rs | 2 +- .../kafka_strimzi_io/v1beta2/kafkatopics.rs | 2 +- .../kafka_strimzi_io/v1beta2/kafkausers.rs | 2 +- .../kamaji_clastix_io/v1alpha1/datastores.rs | 2 +- .../v1alpha1/tenantcontrolplanes.rs | 2 +- .../karpenter_k8s_aws/v1/ec2nodeclasses.rs | 2 +- .../v1beta1/ec2nodeclasses.rs | 2 +- .../src/karpenter_sh/v1/nodeclaims.rs | 2 +- .../src/karpenter_sh/v1/nodepools.rs | 2 +- .../src/karpenter_sh/v1beta1/nodeclaims.rs | 2 +- .../src/karpenter_sh/v1beta1/nodepools.rs | 2 +- .../v1alpha1/clustertriggerauthentications.rs | 2 +- .../src/keda_sh/v1alpha1/scaledjobs.rs | 2 +- .../src/keda_sh/v1alpha1/scaledobjects.rs | 2 +- .../v1alpha1/triggerauthentications.rs | 2 +- .../v1alpha1/keycloakclients.rs | 2 +- .../keycloak_org/v1alpha1/keycloakbackups.rs | 2 +- .../keycloak_org/v1alpha1/keycloakclients.rs | 2 +- .../keycloak_org/v1alpha1/keycloakrealms.rs | 2 +- .../src/keycloak_org/v1alpha1/keycloaks.rs | 2 +- .../keycloak_org/v1alpha1/keycloakusers.rs | 2 +- .../v1alpha1/keyspaces.rs | 2 +- .../v1alpha1/tables.rs | 2 +- .../src/kibana_k8s_elastic_co/v1/kibanas.rs | 2 +- .../kibana_k8s_elastic_co/v1beta1/kibanas.rs | 2 +- .../v1alpha1/streams.rs | 2 +- .../src/kmm_sigs_x_k8s_io/v1beta1/modules.rs | 2 +- .../v1beta1/nodemodulesconfigs.rs | 2 +- .../v1beta1/preflightvalidations.rs | 2 +- .../v1beta2/preflightvalidations.rs | 2 +- .../kms_services_k8s_aws/v1alpha1/aliases.rs | 2 +- .../kms_services_k8s_aws/v1alpha1/grants.rs | 2 +- .../src/kms_services_k8s_aws/v1alpha1/keys.rs | 2 +- .../src/kuadrant_io/v1alpha1/dnsrecords.rs | 5 +- .../src/kuadrant_io/v1alpha1/managedzones.rs | 2 +- .../src/kuadrant_io/v1beta1/kuadrants.rs | 2 +- .../kuadrant_io/v1beta2/ratelimitpolicies.rs | 14 +- .../src/kube_green_com/v1alpha1/sleepinfos.rs | 2 +- .../kubean_io/v1alpha1/clusteroperations.rs | 2 +- .../src/kubean_io/v1alpha1/clusters.rs | 2 +- .../kubean_io/v1alpha1/localartifactsets.rs | 2 +- .../src/kubean_io/v1alpha1/manifests.rs | 2 +- .../v1alpha1/turndownschedules.rs | 2 +- .../kubevious_io/v1alpha1/workloadprofiles.rs | 2 +- .../src/kubevious_io/v1alpha1/workloads.rs | 2 +- .../kueue_x_k8s_io/v1beta1/admissionchecks.rs | 2 +- .../kueue_x_k8s_io/v1beta1/clusterqueues.rs | 25 +- .../src/kueue_x_k8s_io/v1beta1/localqueues.rs | 4 +- .../kueue_x_k8s_io/v1beta1/resourceflavors.rs | 7 +- .../src/kueue_x_k8s_io/v1beta1/workloads.rs | 287 +- .../src/kuma_io/v1alpha1/circuitbreakers.rs | 2 +- .../src/kuma_io/v1alpha1/containerpatches.rs | 2 +- .../src/kuma_io/v1alpha1/dataplaneinsights.rs | 2 +- .../src/kuma_io/v1alpha1/dataplanes.rs | 2 +- .../src/kuma_io/v1alpha1/externalservices.rs | 2 +- .../src/kuma_io/v1alpha1/faultinjections.rs | 2 +- .../src/kuma_io/v1alpha1/healthchecks.rs | 2 +- .../src/kuma_io/v1alpha1/meshaccesslogs.rs | 2 +- .../kuma_io/v1alpha1/meshcircuitbreakers.rs | 2 +- .../src/kuma_io/v1alpha1/meshes.rs | 2 +- .../kuma_io/v1alpha1/meshfaultinjections.rs | 2 +- .../kuma_io/v1alpha1/meshgatewayconfigs.rs | 2 +- .../kuma_io/v1alpha1/meshgatewayinstances.rs | 2 +- .../src/kuma_io/v1alpha1/meshgatewayroutes.rs | 2 +- .../src/kuma_io/v1alpha1/meshgateways.rs | 2 +- .../src/kuma_io/v1alpha1/meshhealthchecks.rs | 2 +- .../src/kuma_io/v1alpha1/meshhttproutes.rs | 2 +- .../src/kuma_io/v1alpha1/meshinsights.rs | 2 +- .../v1alpha1/meshloadbalancingstrategies.rs | 2 +- .../src/kuma_io/v1alpha1/meshproxypatches.rs | 2 +- .../src/kuma_io/v1alpha1/meshratelimits.rs | 2 +- .../src/kuma_io/v1alpha1/meshretries.rs | 2 +- .../src/kuma_io/v1alpha1/meshtcproutes.rs | 2 +- .../src/kuma_io/v1alpha1/meshtimeouts.rs | 2 +- .../src/kuma_io/v1alpha1/meshtraces.rs | 2 +- .../v1alpha1/meshtrafficpermissions.rs | 2 +- .../src/kuma_io/v1alpha1/proxytemplates.rs | 2 +- .../src/kuma_io/v1alpha1/ratelimits.rs | 2 +- .../src/kuma_io/v1alpha1/retries.rs | 2 +- .../src/kuma_io/v1alpha1/serviceinsights.rs | 2 +- .../src/kuma_io/v1alpha1/timeouts.rs | 2 +- .../src/kuma_io/v1alpha1/trafficlogs.rs | 2 +- .../kuma_io/v1alpha1/trafficpermissions.rs | 2 +- .../src/kuma_io/v1alpha1/trafficroutes.rs | 2 +- .../src/kuma_io/v1alpha1/traffictraces.rs | 2 +- .../src/kuma_io/v1alpha1/virtualoutbounds.rs | 2 +- .../src/kuma_io/v1alpha1/zoneegresses.rs | 2 +- .../kuma_io/v1alpha1/zoneegressinsights.rs | 2 +- .../src/kuma_io/v1alpha1/zoneingresses.rs | 2 +- .../kuma_io/v1alpha1/zoneingressinsights.rs | 2 +- .../src/kuma_io/v1alpha1/zoneinsights.rs | 2 +- .../src/kuma_io/v1alpha1/zones.rs | 2 +- .../v1/kustomizations.rs | 2 +- .../v1beta1/kustomizations.rs | 2 +- .../v1beta2/kustomizations.rs | 2 +- .../src/kyverno_io/v1/clusterpolicies.rs | 160 +- .../src/kyverno_io/v1/policies.rs | 160 +- .../kyverno_io/v1alpha2/admissionreports.rs | 59 +- .../v1alpha2/backgroundscanreports.rs | 59 +- .../v1alpha2/clusteradmissionreports.rs | 59 +- .../v1alpha2/clusterbackgroundscanreports.rs | 59 +- .../src/kyverno_io/v1beta1/updaterequests.rs | 2 +- .../src/kyverno_io/v2/admissionreports.rs | 59 +- .../kyverno_io/v2/backgroundscanreports.rs | 59 +- .../src/kyverno_io/v2/cleanuppolicies.rs | 21 +- .../kyverno_io/v2/clusteradmissionreports.rs | 59 +- .../v2/clusterbackgroundscanreports.rs | 59 +- .../kyverno_io/v2/clustercleanuppolicies.rs | 21 +- .../src/kyverno_io/v2/policyexceptions.rs | 2 +- .../src/kyverno_io/v2/updaterequests.rs | 2 +- .../kyverno_io/v2alpha1/cleanuppolicies.rs | 2 +- .../v2alpha1/clustercleanuppolicies.rs | 2 +- .../v2alpha1/globalcontextentries.rs | 13 +- .../kyverno_io/v2alpha1/policyexceptions.rs | 2 +- .../src/kyverno_io/v2beta1/cleanuppolicies.rs | 21 +- .../v2beta1/clustercleanuppolicies.rs | 21 +- .../src/kyverno_io/v2beta1/clusterpolicies.rs | 160 +- .../src/kyverno_io/v2beta1/policies.rs | 160 +- .../kyverno_io/v2beta1/policyexceptions.rs | 2 +- .../v1alpha1/codesigningconfigs.rs | 2 +- .../v1alpha1/eventsourcemappings.rs | 8 +- .../v1alpha1/functions.rs | 12 +- .../v1alpha1/functionurlconfigs.rs | 4 +- .../v1alpha1/layerversions.rs | 2 +- .../v1alpha1/versions.rs | 4 +- .../v1/cluster_leaksignal_istios.rs | 2 +- .../leaksignal_com/v1/leaksignal_istios.rs | 2 +- .../v1beta4/bitwarden_secrets.rs | 2 +- .../v1beta4/bitwarden_templates.rs | 2 +- .../v1beta4/registry_credentials.rs | 2 +- .../v1beta5/bitwarden_secrets.rs | 2 +- .../v1beta5/bitwarden_templates.rs | 2 +- .../v1beta5/registry_credentials.rs | 2 +- .../v1beta6/bitwarden_secrets.rs | 2 +- .../v1beta6/bitwarden_templates.rs | 2 +- .../v1beta6/registry_credentials.rs | 2 +- .../v1beta7/bitwarden_secrets.rs | 2 +- .../v1beta7/bitwarden_templates.rs | 2 +- .../v1beta7/registry_credentials.rs | 2 +- .../v1alpha1/limitadors.rs | 2 +- .../litmuschaos_io/v1alpha1/chaosengines.rs | 2 +- .../v1alpha1/chaosexperiments.rs | 2 +- .../litmuschaos_io/v1alpha1/chaosresults.rs | 2 +- .../v1alpha1/clusterflows.rs | 2 +- .../v1alpha1/clusteroutputs.rs | 2 +- .../logging_banzaicloud_io/v1alpha1/flows.rs | 2 +- .../v1alpha1/loggings.rs | 2 +- .../v1alpha1/outputs.rs | 2 +- .../v1beta1/clusterflows.rs | 2 +- .../v1beta1/clusteroutputs.rs | 2 +- .../logging_banzaicloud_io/v1beta1/flows.rs | 2 +- .../logging_banzaicloud_io/v1beta1/outputs.rs | 2 +- .../v1beta1/syslogngclusterflows.rs | 2 +- .../v1beta1/syslogngclusteroutputs.rs | 2 +- .../v1beta1/syslogngflows.rs | 2 +- .../v1beta1/syslogngoutputs.rs | 2 +- .../v1alpha1/hosttailers.rs | 2 +- .../src/loki_grafana_com/v1/alertingrules.rs | 2 +- .../src/loki_grafana_com/v1/lokistacks.rs | 246 +- .../src/loki_grafana_com/v1/recordingrules.rs | 2 +- .../src/loki_grafana_com/v1/rulerconfigs.rs | 2 +- .../loki_grafana_com/v1beta1/alertingrules.rs | 2 +- .../loki_grafana_com/v1beta1/lokistacks.rs | 2 +- .../v1beta1/recordingrules.rs | 2 +- .../loki_grafana_com/v1beta1/rulerconfigs.rs | 2 +- .../v1beta1/backingimagedatasources.rs | 2 +- .../v1beta1/backingimagemanagers.rs | 2 +- .../src/longhorn_io/v1beta1/backingimages.rs | 2 +- .../src/longhorn_io/v1beta1/backups.rs | 2 +- .../src/longhorn_io/v1beta1/backuptargets.rs | 2 +- .../src/longhorn_io/v1beta1/backupvolumes.rs | 2 +- .../src/longhorn_io/v1beta1/engineimages.rs | 2 +- .../src/longhorn_io/v1beta1/engines.rs | 2 +- .../longhorn_io/v1beta1/instancemanagers.rs | 2 +- .../src/longhorn_io/v1beta1/nodes.rs | 2 +- .../src/longhorn_io/v1beta1/recurringjobs.rs | 2 +- .../src/longhorn_io/v1beta1/replicas.rs | 2 +- .../src/longhorn_io/v1beta1/settings.rs | 2 +- .../src/longhorn_io/v1beta1/sharemanagers.rs | 2 +- .../src/longhorn_io/v1beta1/volumes.rs | 2 +- .../v1beta2/backingimagedatasources.rs | 2 +- .../v1beta2/backingimagemanagers.rs | 2 +- .../src/longhorn_io/v1beta2/backingimages.rs | 2 +- .../v1beta2/backupbackingimages.rs | 8 +- .../src/longhorn_io/v1beta2/backups.rs | 2 +- .../src/longhorn_io/v1beta2/backuptargets.rs | 2 +- .../src/longhorn_io/v1beta2/backupvolumes.rs | 2 +- .../src/longhorn_io/v1beta2/engineimages.rs | 2 +- .../src/longhorn_io/v1beta2/engines.rs | 2 +- .../longhorn_io/v1beta2/instancemanagers.rs | 2 +- .../src/longhorn_io/v1beta2/nodes.rs | 2 +- .../src/longhorn_io/v1beta2/orphans.rs | 2 +- .../src/longhorn_io/v1beta2/recurringjobs.rs | 2 +- .../src/longhorn_io/v1beta2/replicas.rs | 2 +- .../src/longhorn_io/v1beta2/settings.rs | 2 +- .../src/longhorn_io/v1beta2/sharemanagers.rs | 2 +- .../src/longhorn_io/v1beta2/snapshots.rs | 2 +- .../src/longhorn_io/v1beta2/supportbundles.rs | 2 +- .../src/longhorn_io/v1beta2/systembackups.rs | 2 +- .../src/longhorn_io/v1beta2/systemrestores.rs | 2 +- .../longhorn_io/v1beta2/volumeattachments.rs | 2 +- .../src/longhorn_io/v1beta2/volumes.rs | 2 +- .../src/m4e_krestomat_io/v1alpha1/moodles.rs | 2 +- .../src/m4e_krestomat_io/v1alpha1/nginxes.rs | 2 +- .../src/m4e_krestomat_io/v1alpha1/phpfpms.rs | 2 +- .../src/m4e_krestomat_io/v1alpha1/routines.rs | 2 +- .../v1alpha1/machinedeletionremediations.rs | 2 +- .../machinedeletionremediationtemplates.rs | 2 +- .../v1alpha1/elasticmapsservers.rs | 2 +- .../mariadb_mmontes_io/v1alpha1/backups.rs | 2 +- .../v1alpha1/connections.rs | 5 +- .../mariadb_mmontes_io/v1alpha1/databases.rs | 2 +- .../src/mariadb_mmontes_io/v1alpha1/grants.rs | 2 +- .../mariadb_mmontes_io/v1alpha1/mariadbs.rs | 5 +- .../mariadb_mmontes_io/v1alpha1/restores.rs | 2 +- .../mariadb_mmontes_io/v1alpha1/sqljobs.rs | 2 +- .../src/mariadb_mmontes_io/v1alpha1/users.rs | 2 +- .../v1alpha1/envoyconfigrevisions.rs | 2 +- .../v1alpha1/envoyconfigs.rs | 5 +- .../v1alpha1/clusterinstallations.rs | 2 +- .../v1alpha1/mattermostrestoredbs.rs | 2 +- .../v1alpha1/acls.rs | 2 +- .../v1alpha1/clusters.rs | 2 +- .../v1alpha1/parametergroups.rs | 2 +- .../v1alpha1/snapshots.rs | 2 +- .../v1alpha1/subnetgroups.rs | 2 +- .../v1alpha1/users.rs | 2 +- .../v1alpha1/compositecontrollers.rs | 2 +- .../v1alpha1/controllerrevisions.rs | 2 +- .../v1alpha1/decoratorcontrollers.rs | 2 +- .../v1alpha1/bmceventsubscriptions.rs | 2 +- .../src/metal3_io/v1alpha1/dataimages.rs | 2 +- .../src/metal3_io/v1alpha1/firmwareschemas.rs | 2 +- .../src/metal3_io/v1alpha1/hardwaredata.rs | 2 +- .../v1alpha1/hostfirmwarecomponents.rs | 2 +- .../v1alpha1/hostfirmwaresettings.rs | 2 +- .../v1alpha1/preprovisioningimages.rs | 2 +- .../v1alpha1/microcksinstalls.rs | 2 +- .../src/minio_min_io/v2/tenants.rs | 2 +- .../v1alpha1/secretmirrors.rs | 2 +- .../v1alpha2/secretmirrors.rs | 2 +- .../src/model_kubedl_io/v1alpha1/models.rs | 2 +- .../model_kubedl_io/v1alpha1/modelversions.rs | 2 +- .../monitoring_coreos_com/v1/alertmanagers.rs | 48 +- .../monitoring_coreos_com/v1/podmonitors.rs | 9 +- .../src/monitoring_coreos_com/v1/probes.rs | 9 +- .../monitoring_coreos_com/v1/prometheuses.rs | 30 +- .../v1/prometheusrules.rs | 2 +- .../v1/servicemonitors.rs | 9 +- .../monitoring_coreos_com/v1/thanosrulers.rs | 4 +- .../v1alpha1/alertmanagerconfigs.rs | 554 +- .../v1alpha1/prometheusagents.rs | 16 +- .../v1alpha1/scrapeconfigs.rs | 219 +- .../v1beta1/alertmanagerconfigs.rs | 554 +- .../v1alpha1/monocles.rs | 2 +- .../mq_services_k8s_aws/v1alpha1/brokers.rs | 2 +- .../v1alpha1/clusterinfoimports.rs | 2 +- .../v1alpha1/clustersets.rs | 2 +- .../v1alpha1/gateways.rs | 2 +- .../v1alpha1/labelidentities.rs | 2 +- .../v1alpha1/memberclusterannounces.rs | 2 +- .../v1alpha1/multiclusterconfigs.rs | 2 +- .../v1alpha1/resourceexports.rs | 7 +- .../v1alpha1/resourceimports.rs | 7 +- .../v1alpha2/clusterclaims.rs | 2 +- .../v1alpha2/clustersets.rs | 2 +- .../v1alpha1/appliedworks.rs | 2 +- .../v1alpha1/serviceexports.rs | 2 +- .../v1alpha1/serviceimports.rs | 2 +- .../src/mutations_gatekeeper_sh/v1/assign.rs | 2 +- .../v1/assignmetadata.rs | 2 +- .../mutations_gatekeeper_sh/v1/modifyset.rs | 2 +- .../v1alpha1/assign.rs | 2 +- .../v1alpha1/assignimage.rs | 2 +- .../v1alpha1/assignmetadata.rs | 2 +- .../v1alpha1/modifyset.rs | 2 +- .../mutations_gatekeeper_sh/v1beta1/assign.rs | 2 +- .../v1beta1/assignmetadata.rs | 2 +- .../v1beta1/modifyset.rs | 2 +- .../src/nativestor_alauda_io/v1/rawdevices.rs | 2 +- .../src/netchecks_io/v1/networkassertions.rs | 2 +- .../v1alpha1/firewallpolicies.rs | 2 +- .../v1alpha1/firewalls.rs | 2 +- .../v1alpha1/rulegroups.rs | 2 +- .../v1/gcpbackendpolicies.rs | 2 +- .../v1/gcpgatewaypolicies.rs | 2 +- .../v1/healthcheckpolicies.rs | 2 +- .../src/networking_gke_io/v1/lbpolicies.rs | 2 +- .../v1/managedcertificates.rs | 2 +- .../v1/destinationrules.rs | 2 +- .../src/networking_istio_io/v1/gateways.rs | 2 +- .../networking_istio_io/v1/serviceentries.rs | 2 +- .../src/networking_istio_io/v1/sidecars.rs | 2 +- .../networking_istio_io/v1/virtualservices.rs | 2 +- .../networking_istio_io/v1/workloadentries.rs | 2 +- .../networking_istio_io/v1/workloadgroups.rs | 2 +- .../v1alpha3/destinationrules.rs | 2 +- .../v1alpha3/envoyfilters.rs | 2 +- .../networking_istio_io/v1alpha3/gateways.rs | 2 +- .../v1alpha3/serviceentries.rs | 2 +- .../networking_istio_io/v1alpha3/sidecars.rs | 2 +- .../v1alpha3/virtualservices.rs | 2 +- .../v1alpha3/workloadentries.rs | 2 +- .../v1alpha3/workloadgroups.rs | 2 +- .../v1beta1/destinationrules.rs | 2 +- .../networking_istio_io/v1beta1/gateways.rs | 2 +- .../v1beta1/proxyconfigs.rs | 2 +- .../v1beta1/serviceentries.rs | 2 +- .../networking_istio_io/v1beta1/sidecars.rs | 2 +- .../v1beta1/virtualservices.rs | 2 +- .../v1beta1/workloadentries.rs | 2 +- .../v1beta1/workloadgroups.rs | 2 +- .../v1alpha1/policyendpoints.rs | 2 +- .../v1alpha1/multiclusteringresses.rs | 2 +- .../v1alpha1/multiclusterservices.rs | 2 +- .../v1alpha1/nodefeaturerules.rs | 2 +- .../v1/nodefeaturediscoveries.rs | 2 +- .../v1alpha1/nodefeaturerules.rs | 2 +- .../v1alpha1/numatopologies.rs | 2 +- .../notebook_kubedl_io/v1alpha1/notebooks.rs | 2 +- .../v1/receivers.rs | 2 +- .../v1beta1/alerts.rs | 7 +- .../v1beta1/providers.rs | 2 +- .../v1beta1/receivers.rs | 11 +- .../v1beta2/alerts.rs | 2 +- .../v1beta2/providers.rs | 4 +- .../v1beta2/receivers.rs | 6 +- .../v1beta3/alerts.rs | 2 +- .../v1beta3/providers.rs | 4 +- .../v1alpha1/objectbucketclaims.rs | 2 +- .../objectbucket_io/v1alpha1/objectbuckets.rs | 2 +- .../onepassword_com/v1/onepassworditems.rs | 2 +- .../v1alpha1/domains.rs | 2 +- .../v1alpha1/instrumentations.rs | 2 +- .../opentelemetry_io/v1alpha1/opampbridges.rs | 2 +- .../v1alpha1/opentelemetrycollectors.rs | 2 +- .../v1beta1/opentelemetrycollectors.rs | 2 +- .../v1alpha1/nodeupgradejobs.rs | 2 +- .../operator_aquasec_com/v1alpha1/aquacsps.rs | 2 +- .../v1alpha1/aquadatabases.rs | 2 +- .../v1alpha1/aquaenforcers.rs | 2 +- .../v1alpha1/aquagateways.rs | 2 +- .../v1alpha1/aquakubeenforcers.rs | 2 +- .../v1alpha1/aquascanners.rs | 2 +- .../v1alpha1/aquaservers.rs | 2 +- .../v1beta1/authorinos.rs | 2 +- .../v1alpha1/bootstrapproviders.rs | 2 +- .../v1alpha1/controlplaneproviders.rs | 2 +- .../v1alpha1/coreproviders.rs | 2 +- .../v1alpha1/infrastructureproviders.rs | 2 +- .../v1alpha2/addonproviders.rs | 2 +- .../v1alpha2/bootstrapproviders.rs | 2 +- .../v1alpha2/controlplaneproviders.rs | 2 +- .../v1alpha2/coreproviders.rs | 2 +- .../v1alpha2/infrastructureproviders.rs | 2 +- .../operator_cryostat_io/v1beta1/cryostats.rs | 2 +- .../operator_cryostat_io/v1beta2/cryostats.rs | 2 +- .../v1alpha1/discoveryservicecertificates.rs | 2 +- .../v1alpha1/discoveryservices.rs | 2 +- .../v1alpha1/envoydeployments.rs | 2 +- .../v1/clustermanagers.rs | 2 +- .../v1/klusterlets.rs | 2 +- .../v1alpha1/shipwrightbuilds.rs | 2 +- .../v1alpha1/tektonchains.rs | 2 +- .../v1alpha1/tektonconfigs.rs | 2 +- .../v1alpha1/tektonhubs.rs | 2 +- .../v1alpha1/tektoninstallersets.rs | 2 +- .../v1alpha1/tektonpipelines.rs | 2 +- .../v1alpha1/tektontriggers.rs | 2 +- .../v1/amazoncloudintegrations.rs | 2 +- .../src/operator_tigera_io/v1/apiservers.rs | 4 +- .../v1/applicationlayers.rs | 43 +- .../operator_tigera_io/v1/authentications.rs | 2 +- .../src/operator_tigera_io/v1/compliances.rs | 2 +- .../operator_tigera_io/v1/egressgateways.rs | 2 +- .../src/operator_tigera_io/v1/imagesets.rs | 2 +- .../operator_tigera_io/v1/installations.rs | 2 +- .../v1/intrusiondetections.rs | 89 +- .../operator_tigera_io/v1/logcollectors.rs | 2 +- .../src/operator_tigera_io/v1/logstorages.rs | 2 +- .../v1/managementclusterconnections.rs | 2 +- .../v1/managementclusters.rs | 2 +- .../src/operator_tigera_io/v1/managers.rs | 2 +- .../src/operator_tigera_io/v1/monitors.rs | 2 +- .../operator_tigera_io/v1/packetcaptures.rs | 2 +- .../v1/policyrecommendations.rs | 2 +- .../src/operator_tigera_io/v1/tenants.rs | 2 +- .../operator_tigera_io/v1/tigerastatuses.rs | 2 +- .../v1/tlspassthroughroutes.rs | 2 +- .../v1/tlsterminatedroutes.rs | 2 +- .../v1beta1/amazoncloudintegrations.rs | 2 +- .../v1beta1/vmalertmanagerconfigs.rs | 2 +- .../v1beta1/vmnodescrapes.rs | 2 +- .../v1beta1/vmpodscrapes.rs | 2 +- .../v1beta1/vmprobes.rs | 2 +- .../v1beta1/vmrules.rs | 2 +- .../v1beta1/vmservicescrapes.rs | 2 +- .../v1beta1/vmstaticscrapes.rs | 2 +- .../v1beta1/vmusers.rs | 2 +- .../v1alpha1/backups.rs | 2 +- .../v1alpha1/backupschedules.rs | 2 +- .../v1alpha1/configs.rs | 2 +- .../v1alpha1/cronanythings.rs | 2 +- .../v1alpha1/databases.rs | 2 +- .../v1alpha1/exports.rs | 2 +- .../v1alpha1/imports.rs | 2 +- .../v1alpha1/pitrs.rs | 2 +- .../v1alpha1/releases.rs | 2 +- .../src/org_eclipse_che/v1/checlusters.rs | 2 +- .../src/org_eclipse_che/v2/checlusters.rs | 14 +- .../v1alpha1/organizationalunits.rs | 2 +- .../pgv2_percona_com/v2/perconapgbackups.rs | 2 +- .../pgv2_percona_com/v2/perconapgclusters.rs | 68 +- .../pgv2_percona_com/v2/perconapgrestores.rs | 2 +- .../pgv2_percona_com/v2/perconapgupgrades.rs | 2 +- .../pipes_services_k8s_aws/v1alpha1/pipes.rs | 2 +- .../v1/configurationrevisions.rs | 2 +- .../pkg_crossplane_io/v1/configurations.rs | 2 +- .../pkg_crossplane_io/v1/providerrevisions.rs | 2 +- .../src/pkg_crossplane_io/v1/providers.rs | 2 +- .../v1alpha1/controllerconfigs.rs | 2 +- .../src/pkg_crossplane_io/v1beta1/locks.rs | 2 +- .../v1alpha1/clusterimportpolicies.rs | 2 +- .../v1alpha1/pediaclusterlifecycles.rs | 2 +- .../v1alpha1/clusteroverridepolicies.rs | 2 +- .../v1alpha1/clusterpropagationpolicies.rs | 2 +- .../v1alpha1/federatedresourcequotas.rs | 2 +- .../v1alpha1/overridepolicies.rs | 2 +- .../v1alpha1/propagationpolicies.rs | 2 +- .../v1alpha1/serviceaccountaccesses.rs | 32 +- .../v1alpha1/adminnetworkpolicies.rs | 2 +- .../v1alpha1/baselineadminnetworkpolicies.rs | 2 +- .../v1beta1/pgadmins.rs | 2 +- .../v1beta1/pgupgrades.rs | 2 +- .../v1beta1/postgresclusters.rs | 2 +- .../src/postgresql_cnpg_io/v1/backups.rs | 2 +- .../src/postgresql_cnpg_io/v1/poolers.rs | 2 +- .../postgresql_cnpg_io/v1/scheduledbackups.rs | 2 +- .../src/projectcontour_io/v1/httpproxies.rs | 2 +- .../v1/tlscertificatedelegations.rs | 2 +- .../v1alpha1/contourconfigurations.rs | 2 +- .../v1alpha1/contourdeployments.rs | 2 +- .../v1alpha1/extensionservices.rs | 2 +- .../v1alpha1/alertmanagerdefinitions.rs | 2 +- .../v1alpha1/loggingconfigurations.rs | 2 +- .../v1alpha1/rulegroupsnamespaces.rs | 2 +- .../v1alpha1/workspaces.rs | 2 +- .../v1alpha1/perconaservermysqlbackups.rs | 2 +- .../v1alpha1/perconaservermysqlrestores.rs | 2 +- .../v1alpha1/perconaservermysqls.rs | 2 +- .../v1/perconaservermongodbbackups.rs | 2 +- .../v1/perconaservermongodbrestores.rs | 2 +- .../src/ptp_openshift_io/v1/nodeptpdevices.rs | 2 +- .../v1/perconaxtradbclusterbackups.rs | 2 +- .../v1/perconaxtradbclusterrestores.rs | 2 +- .../v1/perconaxtradbclusters.rs | 2 +- .../src/quay_redhat_com/v1/quayregistries.rs | 2 +- .../v1alpha1/quotasubtrees.rs | 2 +- .../src/ray_io/v1/rayclusters.rs | 2 +- .../src/ray_io/v1/rayjobs.rs | 2 +- .../src/ray_io/v1/rayservices.rs | 2 +- .../src/ray_io/v1alpha1/rayclusters.rs | 2 +- .../src/ray_io/v1alpha1/rayjobs.rs | 2 +- .../src/ray_io/v1alpha1/rayservices.rs | 2 +- .../v1beta1/rbacdefinitions.rs | 2 +- .../src/rc_app_stacks/v1/runtimecomponents.rs | 2 +- .../src/rc_app_stacks/v1/runtimeoperations.rs | 2 +- .../v1beta2/runtimecomponents.rs | 2 +- .../v1beta2/runtimeoperations.rs | 2 +- .../v1alpha1/dbclusterparametergroups.rs | 2 +- .../v1alpha1/dbclusters.rs | 2 +- .../v1alpha1/dbinstances.rs | 2 +- .../v1alpha1/dbparametergroups.rs | 2 +- .../v1alpha1/dbproxies.rs | 2 +- .../v1alpha1/dbsubnetgroups.rs | 2 +- .../v1alpha1/globalclusters.rs | 2 +- .../v1alpha1/keepalivedgroups.rs | 2 +- .../v1/apicurioregistries.rs | 2 +- .../v1alpha1/clusterdevfileregistrieslists.rs | 2 +- .../v1alpha1/devfileregistries.rs | 2 +- .../v1alpha1/devfileregistrieslists.rs | 2 +- .../v1alpha1/clusterobjectsyncs.rs | 2 +- .../v1alpha1/objectsyncs.rs | 2 +- .../v1alpha1/nodehealthchecks.rs | 9 +- .../v1beta2/pulpbackups.rs | 2 +- .../v1beta2/pulprestores.rs | 2 +- .../v1beta2/pulps.rs | 2 +- .../v1/clusterephemeralreports.rs | 42 +- .../reports_kyverno_io/v1/ephemeralreports.rs | 42 +- .../v1/teleportloginrules.rs | 2 +- .../v1/teleportoktaimportrules.rs | 2 +- .../v2/teleportsamlconnectors.rs | 2 +- .../v2/teleportusers.rs | 2 +- .../v3/teleportgithubconnectors.rs | 2 +- .../v3/teleportoidcconnectors.rs | 2 +- .../rocketmq_apache_org/v1alpha1/brokers.rs | 2 +- .../rocketmq_apache_org/v1alpha1/consoles.rs | 2 +- .../v1alpha1/nameservices.rs | 2 +- .../v1alpha1/topictransfers.rs | 2 +- .../v1alpha1/hostedzones.rs | 2 +- .../v1alpha1/recordsets.rs | 2 +- .../v1alpha1/resolverendpoints.rs | 2 +- .../v1alpha1/resolverrules.rs | 2 +- .../src/rules_kubeedge_io/v1/ruleendpoints.rs | 2 +- .../src/rules_kubeedge_io/v1/rules.rs | 2 +- .../v1alpha1/extensionconfigs.rs | 2 +- .../s3_services_k8s_aws/v1alpha1/buckets.rs | 2 +- .../s3_snappcloud_io/v1alpha1/s3buckets.rs | 2 +- .../s3_snappcloud_io/v1alpha1/s3userclaims.rs | 2 +- .../src/s3_snappcloud_io/v1alpha1/s3users.rs | 5 +- .../v1alpha1/apps.rs | 2 +- .../v1alpha1/dataqualityjobdefinitions.rs | 2 +- .../v1alpha1/domains.rs | 2 +- .../v1alpha1/endpointconfigs.rs | 2 +- .../v1alpha1/endpoints.rs | 2 +- .../v1alpha1/featuregroups.rs | 2 +- .../v1alpha1/hyperparametertuningjobs.rs | 2 +- .../v1alpha1/modelbiasjobdefinitions.rs | 2 +- .../modelexplainabilityjobdefinitions.rs | 2 +- .../v1alpha1/modelpackagegroups.rs | 2 +- .../v1alpha1/modelpackages.rs | 2 +- .../v1alpha1/modelqualityjobdefinitions.rs | 2 +- .../v1alpha1/models.rs | 2 +- .../v1alpha1/monitoringschedules.rs | 2 +- .../notebookinstancelifecycleconfigs.rs | 2 +- .../v1alpha1/notebookinstances.rs | 2 +- .../v1alpha1/processingjobs.rs | 2 +- .../v1alpha1/trainingjobs.rs | 2 +- .../v1alpha1/transformjobs.rs | 2 +- .../v1alpha1/userprofiles.rs | 2 +- .../v1alpha1/devices.rs | 2 +- .../v1alpha1/podmigrationjobs.rs | 123 +- .../v1alpha1/reservations.rs | 61 +- .../v1alpha1/elasticquotas.rs | 2 +- .../v1alpha1/podgroups.rs | 2 +- .../v1beta1/podgroups.rs | 2 +- .../scheduling_volcano_sh/v1beta1/queues.rs | 2 +- .../v1alpha4/datatypes.rs | 2 +- .../v1alpha4/migrations.rs | 2 +- .../schemas_schemahero_io/v1alpha4/tables.rs | 2 +- .../scylla_scylladb_com/v1/scyllaclusters.rs | 2 +- .../v1alpha1/nodeconfigs.rs | 2 +- .../v1alpha1/scyllaoperatorconfigs.rs | 2 +- .../v1alpha1/basicauths.rs | 5 +- .../v1alpha1/sshkeypairs.rs | 5 +- .../v1alpha1/stringsecrets.rs | 5 +- .../v1alpha1/storeconfigs.rs | 2 +- .../v1alpha1/dopplersecrets.rs | 2 +- .../secrets_hashicorp_com/v1beta1/hcpauths.rs | 2 +- .../v1beta1/hcpvaultsecretsapps.rs | 2 +- .../v1beta1/vaultauths.rs | 2 +- .../v1beta1/vaultconnections.rs | 2 +- .../v1beta1/vaultdynamicsecrets.rs | 2 +- .../v1beta1/vaultpkisecrets.rs | 2 +- .../v1beta1/vaultstaticsecrets.rs | 2 +- .../v1/secretproviderclasses.rs | 2 +- .../v1/secretproviderclasspodstatuses.rs | 2 +- .../v1alpha1/secretproviderclasses.rs | 2 +- .../secretproviderclasspodstatuses.rs | 2 +- .../v1alpha1/secrets.rs | 2 +- .../v1alpha1/imagemanifestvulns.rs | 2 +- .../v1/authorizationpolicies.rs | 2 +- .../v1/peerauthentications.rs | 2 +- .../v1/requestauthentications.rs | 2 +- .../v1beta1/authorizationpolicies.rs | 2 +- .../v1beta1/peerauthentications.rs | 2 +- .../v1beta1/requestauthentications.rs | 2 +- .../v1alpha1/apparmorprofiles.rs | 2 +- .../v1alpha1/profilebindings.rs | 2 +- .../v1alpha1/profilerecordings.rs | 2 +- .../v1alpha1/securityprofilenodestatuses.rs | 2 +- .../securityprofilesoperatordaemons.rs | 2 +- .../v1alpha2/rawselinuxprofiles.rs | 2 +- .../v1beta1/seccompprofiles.rs | 2 +- .../v1alpha1/selfnoderemediationconfigs.rs | 2 +- .../v1alpha1/selfnoderemediations.rs | 2 +- .../v1alpha1/selfnoderemediationtemplates.rs | 2 +- .../src/sematext_com/v1/sematextagents.rs | 2 +- .../clusterworkloadresourcemappings.rs | 2 +- .../v1alpha3/servicebindings.rs | 2 +- .../clusterworkloadresourcemappings.rs | 2 +- .../v1beta1/servicebindings.rs | 2 +- .../v1alpha1/istiocontrolplanes.rs | 3 +- .../v1alpha1/istiomeshes.rs | 2 +- .../v1alpha1/istiomeshgateways.rs | 3 +- .../v1alpha1/peeristiocontrolplanes.rs | 3 +- .../v1alpha1/adoptedresources.rs | 2 +- .../services_k8s_aws/v1alpha1/fieldexports.rs | 2 +- .../serving_kubedl_io/v1alpha1/inferences.rs | 5 +- .../v1alpha1/activities.rs | 2 +- .../v1alpha1/statemachines.rs | 2 +- .../site_superedge_io/v1alpha1/nodegroups.rs | 2 +- .../site_superedge_io/v1alpha1/nodeunits.rs | 2 +- .../v1alpha1/nodemetrics.rs | 2 +- .../slo_koordinator_sh/v1alpha1/nodeslos.rs | 2 +- .../v1/prometheusservicelevels.rs | 2 +- .../v1/snapshotschedules.rs | 2 +- .../v1/volumesnapshotclasses.rs | 2 +- .../v1/volumesnapshotcontents.rs | 5 +- .../v1/volumesnapshots.rs | 2 +- .../v1beta1/volumesnapshotclasses.rs | 2 +- .../v1beta1/volumesnapshotcontents.rs | 5 +- .../v1beta1/volumesnapshots.rs | 2 +- .../v1alpha1/platformapplications.rs | 2 +- .../v1alpha1/platformendpoints.rs | 2 +- .../v1alpha1/subscriptions.rs | 2 +- .../sns_services_k8s_aws/v1alpha1/topics.rs | 2 +- .../v1alpha08/sonataflowbuilds.rs | 2 +- .../v1alpha08/sonataflowplatforms.rs | 10 +- .../source_toolkit_fluxcd_io/v1/buckets.rs | 2 +- .../v1/gitrepositories.rs | 2 +- .../source_toolkit_fluxcd_io/v1/helmcharts.rs | 2 +- .../v1/helmrepositories.rs | 2 +- .../v1beta1/buckets.rs | 2 +- .../v1beta1/gitrepositories.rs | 2 +- .../v1beta1/helmcharts.rs | 2 +- .../v1beta1/helmrepositories.rs | 2 +- .../v1beta2/buckets.rs | 2 +- .../v1beta2/gitrepositories.rs | 2 +- .../v1beta2/helmcharts.rs | 2 +- .../v1beta2/helmrepositories.rs | 2 +- .../v1beta2/ocirepositories.rs | 2 +- .../v1beta2/scheduledsparkapplications.rs | 8 +- .../v1beta2/sparkapplications.rs | 8 +- .../src/spv_no/v1/azurekeyvaultsecrets.rs | 2 +- .../v1alpha1/azurekeyvaultidentities.rs | 2 +- .../spv_no/v1alpha1/azurekeyvaultsecrets.rs | 2 +- .../spv_no/v1alpha1/azuremanagedidentities.rs | 2 +- .../spv_no/v2alpha1/azurekeyvaultsecrets.rs | 2 +- .../spv_no/v2beta1/azurekeyvaultsecrets.rs | 2 +- .../sqs_services_k8s_aws/v1alpha1/queues.rs | 2 +- .../v1beta1/constraintpodstatuses.rs | 2 +- .../v1beta1/constrainttemplatepodstatuses.rs | 2 +- .../v1beta1/expansiontemplatepodstatuses.rs | 2 +- .../v1beta1/mutatorpodstatuses.rs | 2 +- .../v1alpha1/storageproviders.rs | 2 +- .../src/storageos_com/v1/storageosclusters.rs | 2 +- .../src/sts_min_io/v1alpha1/policybindings.rs | 2 +- .../src/sts_min_io/v1beta1/policybindings.rs | 2 +- .../src/stunner_l7mp_io/v1/dataplanes.rs | 2 +- .../src/stunner_l7mp_io/v1/gatewayconfigs.rs | 2 +- .../src/stunner_l7mp_io/v1/staticservices.rs | 2 +- .../src/stunner_l7mp_io/v1/udproutes.rs | 2 +- .../stunner_l7mp_io/v1alpha1/dataplanes.rs | 2 +- .../v1alpha1/gatewayconfigs.rs | 2 +- .../v1alpha1/staticservices.rs | 2 +- .../src/submariner_io/v1alpha1/brokers.rs | 8 +- .../v1alpha1/servicediscoveries.rs | 6 +- .../src/submariner_io/v1alpha1/submariners.rs | 11 +- .../src/telemetry_istio_io/v1/telemetries.rs | 2 +- .../v1alpha1/telemetries.rs | 2 +- .../v1/constrainttemplates.rs | 2 +- .../v1alpha1/constrainttemplates.rs | 2 +- .../v1beta1/constrainttemplates.rs | 2 +- .../v1alpha1/tempomonolithics.rs | 2 +- .../tempo_grafana_com/v1alpha1/tempostacks.rs | 2 +- .../v1beta1/temporalclusterclients.rs | 2 +- .../temporal_io/v1beta1/temporalnamespaces.rs | 2 +- .../v1beta1/temporalworkerprocesses.rs | 2 +- .../src/tests_testkube_io/v1/scripts.rs | 2 +- .../tests_testkube_io/v1/testexecutions.rs | 2 +- .../src/tests_testkube_io/v1/tests.rs | 2 +- .../src/tests_testkube_io/v1/testsources.rs | 2 +- .../v1/testsuiteexecutions.rs | 2 +- .../src/tests_testkube_io/v1/testsuites.rs | 2 +- .../src/tests_testkube_io/v1/testtriggers.rs | 2 +- .../src/tests_testkube_io/v2/scripts.rs | 2 +- .../src/tests_testkube_io/v2/tests.rs | 2 +- .../src/tests_testkube_io/v2/testsuites.rs | 2 +- .../src/tests_testkube_io/v3/tests.rs | 2 +- .../src/tests_testkube_io/v3/testsuites.rs | 2 +- .../src/tf_tungsten_io/v1alpha1/analytics.rs | 2 +- .../tf_tungsten_io/v1alpha1/analyticsalarm.rs | 2 +- .../tf_tungsten_io/v1alpha1/analyticssnmp.rs | 2 +- .../src/tf_tungsten_io/v1alpha1/cassandras.rs | 2 +- .../src/tf_tungsten_io/v1alpha1/configs.rs | 2 +- .../src/tf_tungsten_io/v1alpha1/controls.rs | 2 +- .../tf_tungsten_io/v1alpha1/kubemanagers.rs | 2 +- .../src/tf_tungsten_io/v1alpha1/managers.rs | 2 +- .../tf_tungsten_io/v1alpha1/queryengine.rs | 2 +- .../src/tf_tungsten_io/v1alpha1/rabbitmqs.rs | 2 +- .../src/tf_tungsten_io/v1alpha1/redis.rs | 2 +- .../src/tf_tungsten_io/v1alpha1/vrouters.rs | 2 +- .../src/tf_tungsten_io/v1alpha1/zookeepers.rs | 2 +- .../src/theketch_io/v1beta1/apps.rs | 2 +- .../src/theketch_io/v1beta1/jobs.rs | 2 +- .../src/tinkerbell_org/v1alpha1/hardware.rs | 2 +- .../src/tinkerbell_org/v1alpha1/osies.rs | 2 +- .../src/tinkerbell_org/v1alpha1/stack.rs | 2 +- .../src/tinkerbell_org/v1alpha1/templates.rs | 2 +- .../src/tinkerbell_org/v1alpha1/workflows.rs | 2 +- .../src/tinkerbell_org/v1alpha2/hardware.rs | 2 +- .../src/tinkerbell_org/v1alpha2/osies.rs | 2 +- .../src/tinkerbell_org/v1alpha2/templates.rs | 2 +- .../src/tinkerbell_org/v1alpha2/workflows.rs | 2 +- .../v1alpha1/noderesourcetopologies.rs | 2 +- .../topolvm_cybozu_com/v1/logicalvolumes.rs | 2 +- .../topolvm_cybozu_com/v2/topolvmclusters.rs | 2 +- .../src/traefik_io/v1alpha1/ingressroutes.rs | 2 +- .../traefik_io/v1alpha1/ingressroutetcps.rs | 2 +- .../traefik_io/v1alpha1/ingressrouteudps.rs | 2 +- .../src/traefik_io/v1alpha1/middlewaretcps.rs | 2 +- .../traefik_io/v1alpha1/serverstransports.rs | 2 +- .../v1alpha1/serverstransporttcps.rs | 2 +- .../src/traefik_io/v1alpha1/tlsoptions.rs | 2 +- .../src/traefik_io/v1alpha1/tlsstores.rs | 2 +- .../traefik_io/v1alpha1/traefikservices.rs | 2 +- .../v1alpha1/elasticdljobs.rs | 2 +- .../training_kubedl_io/v1alpha1/marsjobs.rs | 2 +- .../training_kubedl_io/v1alpha1/mpijobs.rs | 2 +- .../v1alpha1/pytorchjobs.rs | 2 +- .../src/training_kubedl_io/v1alpha1/tfjobs.rs | 2 +- .../training_kubedl_io/v1alpha1/xdljobs.rs | 2 +- .../v1alpha1/xgboostjobs.rs | 2 +- .../v1/tridentorchestrators.rs | 2 +- .../trust_cert_manager_io/v1alpha1/bundles.rs | 2 +- .../src/upgrade_cattle_io/v1/plans.rs | 2 +- .../v1alpha1/upgradeconfigs.rs | 2 +- .../src/velero_io/v1/backuprepositories.rs | 2 +- .../src/velero_io/v1/backups.rs | 2 +- .../velero_io/v1/backupstoragelocations.rs | 2 +- .../src/velero_io/v1/deletebackuprequests.rs | 2 +- .../src/velero_io/v1/downloadrequests.rs | 2 +- .../src/velero_io/v1/podvolumebackups.rs | 5 +- .../src/velero_io/v1/podvolumerestores.rs | 5 +- .../src/velero_io/v1/schedules.rs | 2 +- .../src/velero_io/v1/serverstatusrequests.rs | 2 +- .../velero_io/v1/volumesnapshotlocations.rs | 2 +- .../src/velero_io/v2alpha1/datadownloads.rs | 2 +- .../src/velero_io/v2alpha1/datauploads.rs | 2 +- .../v1alpha1/virtualmachinemigrations.rs | 2 +- .../v1alpha1/virtualmachines.rs | 2 +- .../v1alpha1/replicationdestinations.rs | 7 +- .../v1alpha1/replicationsources.rs | 2 +- .../vpcresources_k8s_aws/v1alpha1/cninodes.rs | 5 +- .../v1beta1/securitygrouppolicies.rs | 48 +- .../v1alpha1/clusterpolicyreports.rs | 32 +- .../wgpolicyk8s_io/v1alpha1/policyreports.rs | 32 +- .../v1alpha2/clusterpolicyreports.rs | 32 +- .../wgpolicyk8s_io/v1alpha2/policyreports.rs | 32 +- .../v1beta1/clusterpolicyreports.rs | 32 +- .../wgpolicyk8s_io/v1beta1/policyreports.rs | 32 +- .../wildfly_org/v1alpha1/wildflyservers.rs | 2 +- .../v1alpha1/clusterresourcebindings.rs | 2 +- .../v1alpha1/resourcebindings.rs | 2 +- .../v1alpha2/clusterresourcebindings.rs | 2 +- .../v1alpha2/resourcebindings.rs | 2 +- .../v1beta1/appwrappers.rs | 2 +- .../v1beta1/schedulingspecs.rs | 2 +- .../v1beta2/appwrappers.rs | 2 +- .../v1alpha1/instancesets.rs | 2 +- .../v1alpha1/replicatedstatemachines.rs | 2 +- .../v1/zoneawareupdates.rs | 2 +- .../v1/zonedisruptionbudgets.rs | 2 +- .../v1beta1/zookeeperclusters.rs | 2 +- 1706 files changed, 30264 insertions(+), 13632 deletions(-) diff --git a/crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/pgupgrades.yaml b/crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/pgupgrades.yaml index 9d7309a6e..381176e62 100644 --- a/crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/pgupgrades.yaml +++ b/crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/pgupgrades.yaml @@ -588,7 +588,7 @@ spec: type: "object" fromPostgresVersion: description: "The major version of PostgreSQL before the upgrade." - maximum: 16.0 + maximum: 17.0 minimum: 10.0 type: "integer" image: @@ -674,7 +674,7 @@ spec: type: "string" toPostgresVersion: description: "The major version of PostgreSQL to be upgraded to." - maximum: 16.0 + maximum: 17.0 minimum: 10.0 type: "integer" tolerations: diff --git a/crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/postgresclusters.yaml b/crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/postgresclusters.yaml index ff8f5a142..255b4c7e6 100644 --- a/crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/postgresclusters.yaml +++ b/crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/postgresclusters.yaml @@ -6961,7 +6961,7 @@ spec: type: "string" postgresVersion: description: "The major version of PostgreSQL installed in the PostgreSQL image" - maximum: 16.0 + maximum: 17.0 minimum: 10.0 type: "integer" proxy: diff --git a/crd-catalog/GoogleCloudPlatform/spark-on-k8s-operator/sparkoperator.k8s.io/v1beta2/scheduledsparkapplications.yaml b/crd-catalog/GoogleCloudPlatform/spark-on-k8s-operator/sparkoperator.k8s.io/v1beta2/scheduledsparkapplications.yaml index 569e2565d..275240cd3 100644 --- a/crd-catalog/GoogleCloudPlatform/spark-on-k8s-operator/sparkoperator.k8s.io/v1beta2/scheduledsparkapplications.yaml +++ b/crd-catalog/GoogleCloudPlatform/spark-on-k8s-operator/sparkoperator.k8s.io/v1beta2/scheduledsparkapplications.yaml @@ -2005,6 +2005,9 @@ spec: - "protocol" type: "object" type: "array" + priorityClassName: + description: "PriorityClassName is the name of the PriorityClass for the driver pod." + type: "string" schedulerName: description: "SchedulerName specifies the scheduler that will be used for scheduling" type: "string" @@ -4980,6 +4983,9 @@ spec: - "protocol" type: "object" type: "array" + priorityClassName: + description: "PriorityClassName is the name of the PriorityClass for the executor pod." + type: "string" schedulerName: description: "SchedulerName specifies the scheduler that will be used for scheduling" type: "string" diff --git a/crd-catalog/GoogleCloudPlatform/spark-on-k8s-operator/sparkoperator.k8s.io/v1beta2/sparkapplications.yaml b/crd-catalog/GoogleCloudPlatform/spark-on-k8s-operator/sparkoperator.k8s.io/v1beta2/sparkapplications.yaml index 3362c2b87..6b067574b 100644 --- a/crd-catalog/GoogleCloudPlatform/spark-on-k8s-operator/sparkoperator.k8s.io/v1beta2/sparkapplications.yaml +++ b/crd-catalog/GoogleCloudPlatform/spark-on-k8s-operator/sparkoperator.k8s.io/v1beta2/sparkapplications.yaml @@ -1985,6 +1985,9 @@ spec: - "protocol" type: "object" type: "array" + priorityClassName: + description: "PriorityClassName is the name of the PriorityClass for the driver pod." + type: "string" schedulerName: description: "SchedulerName specifies the scheduler that will be used for scheduling" type: "string" @@ -4960,6 +4963,9 @@ spec: - "protocol" type: "object" type: "array" + priorityClassName: + description: "PriorityClassName is the name of the PriorityClass for the executor pod." + type: "string" schedulerName: description: "SchedulerName specifies the scheduler that will be used for scheduling" type: "string" diff --git a/crd-catalog/Kuadrant/dns-operator/kuadrant.io/v1alpha1/dnsrecords.yaml b/crd-catalog/Kuadrant/dns-operator/kuadrant.io/v1alpha1/dnsrecords.yaml index e67c08fbe..dc8ecc56a 100644 --- a/crd-catalog/Kuadrant/dns-operator/kuadrant.io/v1alpha1/dnsrecords.yaml +++ b/crd-catalog/Kuadrant/dns-operator/kuadrant.io/v1alpha1/dnsrecords.yaml @@ -125,6 +125,9 @@ spec: minLength: 1 pattern: "^(?:[\\w\\-.~:\\/?#[\\]@!$&'()*+,;=]+)\\.(?:[\\w\\-.~:\\/?#[\\]@!$&'()*+,;=]+)$" type: "string" + x-kubernetes-validations: + - message: "RootHost is immutable" + rule: "self == oldSelf" required: - "providerRef" - "rootHost" @@ -344,10 +347,6 @@ spec: description: "QueuedAt is a time when DNS record was received for the reconciliation" format: "date-time" type: "string" - queuedFor: - description: "QueuedFor is a time when we expect a DNS record to be reconciled again" - format: "date-time" - type: "string" validFor: description: "ValidFor indicates duration since the last reconciliation we consider data in the record to be valid" type: "string" diff --git a/crd-catalog/aerospike/aerospike-kubernetes-operator/asdb.aerospike.com/v1/aerospikeclusters.yaml b/crd-catalog/aerospike/aerospike-kubernetes-operator/asdb.aerospike.com/v1/aerospikeclusters.yaml index f97f39b0a..5ded21feb 100644 --- a/crd-catalog/aerospike/aerospike-kubernetes-operator/asdb.aerospike.com/v1/aerospikeclusters.yaml +++ b/crd-catalog/aerospike/aerospike-kubernetes-operator/asdb.aerospike.com/v1/aerospikeclusters.yaml @@ -3,7 +3,7 @@ kind: "CustomResourceDefinition" metadata: annotations: aerospike-kubernetes-operator/version: "3.3.1" - controller-gen.kubebuilder.io/version: "v0.12.1" + controller-gen.kubebuilder.io/version: "v0.14.0" name: "aerospikeclusters.asdb.aerospike.com" spec: group: "asdb.aerospike.com" @@ -39,10 +39,10 @@ spec: description: "AerospikeCluster is the schema for the AerospikeCluster API" properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -112,7 +112,7 @@ spec: type: "array" x-kubernetes-list-type: "set" secretName: - description: "SecretName has secret info created by user. User needs to create this secret from password literal. eg: kubectl create secret generic dev-db-secret --from-literal=password='password'" + description: "SecretName has secret info created by user. User needs to create this secret from password literal.\neg: kubectl create secret generic dev-db-secret --from-literal=password='password'" type: "string" required: - "name" @@ -134,7 +134,7 @@ spec: description: "AerospikeNetworkPolicy specifies how clients and tools access the Aerospike cluster." properties: access: - description: "AccessType is the type of network address to use for Aerospike access address. Defaults to hostInternal." + description: "AccessType is the type of network address to use for Aerospike access address.\nDefaults to hostInternal." enum: - "pod" - "hostInternal" @@ -143,7 +143,7 @@ spec: - "customInterface" type: "string" alternateAccess: - description: "AlternateAccessType is the type of network address to use for Aerospike alternate access address. Defaults to hostExternal." + description: "AlternateAccessType is the type of network address to use for Aerospike alternate access address.\nDefaults to hostExternal." enum: - "pod" - "hostInternal" @@ -152,48 +152,48 @@ spec: - "customInterface" type: "string" customAccessNetworkNames: - description: "CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' access type." + description: "CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' access type." items: type: "string" minItems: 1 type: "array" customAlternateAccessNetworkNames: - description: "CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' alternateAccess type" + description: "CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike\nalternate access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' alternateAccess type" items: type: "string" minItems: 1 type: "array" customFabricNetworkNames: - description: "CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' fabric type" + description: "CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' fabric type" items: type: "string" minItems: 1 type: "array" customTLSAccessNetworkNames: - description: "CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAccess type" + description: "CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' tlsAccess type" items: type: "string" minItems: 1 type: "array" customTLSAlternateAccessNetworkNames: - description: "CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAlternateAccess type" + description: "CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS\nalternate access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' tlsAlternateAccess type" items: type: "string" minItems: 1 type: "array" customTLSFabricNetworkNames: - description: "CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsFabric type" + description: "CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network\ninterfaces to the pod.\nRequired with 'customInterface' tlsFabric type" items: type: "string" minItems: 1 type: "array" fabric: - description: "FabricType is the type of network address to use for Aerospike fabric address. Defaults is empty meaning all interfaces 'any'." + description: "FabricType is the type of network address to use for Aerospike fabric address.\nDefaults is empty meaning all interfaces 'any'." enum: - "customInterface" type: "string" tlsAccess: - description: "TLSAccessType is the type of network address to use for Aerospike TLS access address. Defaults to hostInternal." + description: "TLSAccessType is the type of network address to use for Aerospike TLS access address.\nDefaults to hostInternal." enum: - "pod" - "hostInternal" @@ -202,7 +202,7 @@ spec: - "customInterface" type: "string" tlsAlternateAccess: - description: "TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. Defaults to hostExternal." + description: "TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address.\nDefaults to hostExternal." enum: - "pod" - "hostInternal" @@ -211,7 +211,7 @@ spec: - "customInterface" type: "string" tlsFabric: - description: "TLSFabricType is the type of network address to use for Aerospike TLS fabric address. Defaults is empty meaning all interfaces 'any'." + description: "TLSFabricType is the type of network address to use for Aerospike TLS fabric address.\nDefaults is empty meaning all interfaces 'any'." enum: - "customInterface" type: "string" @@ -220,13 +220,13 @@ spec: description: "Disable the PodDisruptionBudget creation for the Aerospike cluster." type: "boolean" enableDynamicConfigUpdate: - description: "EnableDynamicConfigUpdate enables dynamic config update flow of the operator. If enabled, operator will try to update the Aerospike config dynamically. In case of inconsistent state during dynamic config update, operator falls back to rolling restart." + description: "EnableDynamicConfigUpdate enables dynamic config update flow of the operator.\nIf enabled, operator will try to update the Aerospike config dynamically.\nIn case of inconsistent state during dynamic config update, operator falls back to rolling restart." type: "boolean" image: description: "Aerospike server image" type: "string" k8sNodeBlockList: - description: "K8sNodeBlockList is a list of Kubernetes nodes which are not used for Aerospike pods. Pods are not scheduled on these nodes. Pods are migrated from these nodes if already present. This is useful for the maintenance of Kubernetes nodes." + description: "K8sNodeBlockList is a list of Kubernetes nodes which are not used for Aerospike pods. Pods are not scheduled on\nthese nodes. Pods are migrated from these nodes if already present. This is useful for the maintenance of\nKubernetes nodes." items: type: "string" minItems: 1 @@ -235,7 +235,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "MaxUnavailable is the percentage/number of pods that can be allowed to go down or unavailable before application disruption. This value is used to create PodDisruptionBudget. Defaults to 1. Refer Aerospike documentation for more details." + description: "MaxUnavailable is the percentage/number of pods that can be allowed to go down or unavailable before application\ndisruption. This value is used to create PodDisruptionBudget. Defaults to 1.\nRefer Aerospike documentation for more details." x-kubernetes-int-or-string: true operations: description: "Operations is a list of on-demand operations to be performed on the Aerospike cluster." @@ -265,7 +265,7 @@ spec: description: "Certificates to connect to Aerospike." properties: certPathInOperator: - description: "AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem." + description: "AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike\ncluster.\nAll paths are on operator's filesystem." properties: caCertsPath: type: "string" @@ -309,18 +309,18 @@ spec: description: "Specify additional configuration for the Aerospike pods" properties: aerospikeContainer: - description: "AerospikeContainerSpec configures the aerospike-server container created by the operator." + description: "AerospikeContainerSpec configures the aerospike-server container\ncreated by the operator." properties: resources: - description: "Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests." + description: "Define resources requests and limits for Aerospike Server Container.\nPlease contact aerospike for proper sizing exercise\nOnly Memory and Cpu resources can be given\nResources.Limits should be more than Resources.Requests." properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -336,7 +336,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -345,17 +345,17 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" securityContext: description: "SecurityContext that will be added to aerospike-server container created by operator." properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -371,27 +371,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -407,51 +407,57 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" type: "object" aerospikeInitContainer: - description: "AerospikeInitContainerSpec configures the aerospike-init container created by the operator." + description: "AerospikeInitContainerSpec configures the aerospike-init container\ncreated by the operator." properties: + imageNameAndTag: + description: "ImageNameAndTag is the name:tag of aerospike-init container image" + type: "string" imageRegistry: - description: "ImageRegistry is the name of image registry for aerospike-init container image ImageRegistry, e.g. docker.io, redhat.access.com" + description: "ImageRegistry is the name of image registry for aerospike-init container image\nImageRegistry, e.g. docker.io, redhat.access.com" + type: "string" + imageRegistryNamespace: + description: "ImageRegistryNamespace is the name of namespace in registry for aerospike-init container image" type: "string" resources: - description: "Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests." + description: "Define resources requests and limits for Aerospike init Container.\nOnly Memory and Cpu resources can be given\nResources.Limits should be more than Resources.Requests." properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -467,7 +473,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -476,17 +482,17 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" securityContext: description: "SecurityContext that will be added to aerospike-init container created by operator." properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -502,27 +508,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -538,31 +544,31 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" @@ -574,9 +580,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -584,16 +590,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -605,16 +611,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -635,26 +641,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -666,16 +672,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -696,7 +702,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -704,21 +710,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -730,38 +736,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -773,23 +779,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -798,26 +804,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -829,38 +835,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -872,17 +878,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -893,7 +899,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -901,21 +907,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -927,38 +933,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -970,23 +976,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -995,26 +1001,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1026,38 +1032,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1069,17 +1075,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -1088,15 +1094,15 @@ spec: type: "object" type: "object" dnsConfig: - description: "DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None`" + description: "DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy.\nThis is required field when dnsPolicy is set to `None`" properties: nameservers: - description: "A list of DNS name server IP addresses. This will be appended to the base nameservers generated from DNSPolicy. Duplicated nameservers will be removed." + description: "A list of DNS name server IP addresses.\nThis will be appended to the base nameservers generated from DNSPolicy.\nDuplicated nameservers will be removed." items: type: "string" type: "array" options: - description: "A list of DNS resolver options. This will be merged with the base options generated from DNSPolicy. Duplicated entries will be removed. Resolution options given in Options will override those that appear in the base DNSPolicy." + description: "A list of DNS resolver options.\nThis will be merged with the base options generated from DNSPolicy.\nDuplicated entries will be removed. Resolution options given in Options\nwill override those that appear in the base DNSPolicy." items: description: "PodDNSConfigOption defines DNS resolver options of a pod." properties: @@ -1108,27 +1114,27 @@ spec: type: "object" type: "array" searches: - description: "A list of DNS search domains for host-name lookup. This will be appended to the base search paths generated from DNSPolicy. Duplicated search paths will be removed." + description: "A list of DNS search domains for host-name lookup.\nThis will be appended to the base search paths generated from DNSPolicy.\nDuplicated search paths will be removed." items: type: "string" type: "array" type: "object" dnsPolicy: - description: "DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet" + description: "DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy.\nIf hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet" type: "string" effectiveDNSPolicy: description: "Effective value of the DNSPolicy" type: "string" hostNetwork: - description: "HostNetwork enables host networking for the pod. To enable hostNetwork multiPodPerHost must be false." + description: "HostNetwork enables host networking for the pod.\nTo enable hostNetwork multiPodPerHost must be false." type: "boolean" imagePullSecrets: - description: "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod" + description: "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of\nthe images used by this PodSpec.\nMore info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod" items: - description: "LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace." + description: "LocalObjectReference contains enough information to let you locate the\nreferenced object inside the same namespace." properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -1139,17 +1145,17 @@ spec: description: "A single application container that you want to run within a pod." properties: args: - description: "Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Arguments to the entrypoint.\nThe container image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" command: - description: "Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Entrypoint array. Not executed within a shell.\nThe container image's ENTRYPOINT is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" env: - description: "List of environment variables to set in the container. Cannot be updated." + description: "List of environment variables to set in the container.\nCannot be updated." items: description: "EnvVar represents an environment variable present in a Container." properties: @@ -1157,7 +1163,7 @@ spec: description: "Name of the environment variable. Must be a C_IDENTIFIER." type: "string" value: - description: "Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\"." + description: "Variable references $(VAR_NAME) are expanded\nusing the previously defined environment variables in the container and\nany service environment variables. If a variable cannot be resolved,\nthe reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.\n\"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\".\nEscaped references will never be expanded, regardless of whether the variable\nexists or not.\nDefaults to \"\"." type: "string" valueFrom: description: "Source for the environment variable's value. Cannot be used if value is not empty." @@ -1169,7 +1175,7 @@ spec: description: "The key to select." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -1179,7 +1185,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" fieldRef: - description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." + description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,\nspec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." properties: apiVersion: description: "Version of the schema the FieldPath is written in terms of, defaults to \"v1\"." @@ -1192,7 +1198,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" resourceFieldRef: - description: "Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." + description: "Selects a resource of the container: only resources limits and requests\n(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." properties: containerName: description: "Container name: required for volumes, optional for env vars" @@ -1218,7 +1224,7 @@ spec: description: "The key of the secret to select from. Must be a valid secret key." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -1233,7 +1239,7 @@ spec: type: "object" type: "array" envFrom: - description: "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated." + description: "List of sources to populate environment variables in the container.\nThe keys defined within a source must be a C_IDENTIFIER. All invalid keys\nwill be reported as an event when the container is starting. When a key exists in multiple\nsources, the value associated with the last source will take precedence.\nValues defined by an Env with a duplicate key will take precedence.\nCannot be updated." items: description: "EnvFromSource represents the source of a set of ConfigMaps" properties: @@ -1241,7 +1247,7 @@ spec: description: "The ConfigMap to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -1255,7 +1261,7 @@ spec: description: "The Secret to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -1265,22 +1271,22 @@ spec: type: "object" type: "array" image: - description: "Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets." + description: "Container image name.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets." type: "string" imagePullPolicy: - description: "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images" + description: "Image pull policy.\nOne of Always, Never, IfNotPresent.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/containers/images#updating-images" type: "string" lifecycle: - description: "Actions that the management system should take in response to container lifecycle events. Cannot be updated." + description: "Actions that the management system should take in response to container lifecycle events.\nCannot be updated." properties: postStart: - description: "PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PostStart is called immediately after a container is created. If the handler fails,\nthe container is terminated and restarted according to its restart policy.\nOther management of the container blocks until the hook completes.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -1289,7 +1295,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -1297,7 +1303,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -1314,10 +1320,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -1333,7 +1339,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -1342,20 +1348,20 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" type: "object" preStop: - description: "PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PreStop is called immediately before a container is terminated due to an\nAPI request or management event such as liveness/startup probe failure,\npreemption, resource contention, etc. The handler is not called if the\ncontainer crashes or exits. The Pod's termination grace period countdown begins before the\nPreStop hook is executed. Regardless of the outcome of the handler, the\ncontainer will eventually terminate within the Pod's termination grace\nperiod (unless delayed by finalizers). Other management of the container blocks until the hook completes\nor until the termination grace period is reached.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -1364,7 +1370,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -1372,7 +1378,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -1389,10 +1395,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -1408,7 +1414,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -1417,7 +1423,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" @@ -1425,19 +1431,19 @@ spec: type: "object" type: "object" livenessProbe: - description: "Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container liveness.\nContainer will be restarted if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -1448,7 +1454,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -1457,7 +1463,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -1465,7 +1471,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -1482,24 +1488,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -1512,45 +1518,45 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" name: - description: "Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated." + description: "Name of the container specified as a DNS_LABEL.\nEach container in a pod must have a unique name (DNS_LABEL).\nCannot be updated." type: "string" ports: - description: "List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default \"0.0.0.0\" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated." + description: "List of ports to expose from the container. Not specifying a port here\nDOES NOT prevent that port from being exposed. Any port which is\nlistening on the default \"0.0.0.0\" address inside a container will be\naccessible from the network.\nModifying this array with strategic merge patch may corrupt the data.\nFor more information See https://github.com/kubernetes/kubernetes/issues/108255.\nCannot be updated." items: description: "ContainerPort represents a network port in a single container." properties: containerPort: - description: "Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536." + description: "Number of port to expose on the pod's IP address.\nThis must be a valid port number, 0 < x < 65536." format: "int32" type: "integer" hostIP: description: "What host IP to bind the external port to." type: "string" hostPort: - description: "Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this." + description: "Number of port to expose on the host.\nIf specified, this must be a valid port number, 0 < x < 65536.\nIf HostNetwork is specified, this must match ContainerPort.\nMost containers do not need this." format: "int32" type: "integer" name: - description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services." + description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each\nnamed port in a pod must have a unique name. Name for the port that can be\nreferred to by services." type: "string" protocol: default: "TCP" - description: "Protocol for port. Must be UDP, TCP, or SCTP. Defaults to \"TCP\"." + description: "Protocol for port. Must be UDP, TCP, or SCTP.\nDefaults to \"TCP\"." type: "string" required: - "containerPort" @@ -1561,19 +1567,19 @@ spec: - "protocol" x-kubernetes-list-type: "map" readinessProbe: - description: "Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container service readiness.\nContainer will be removed from service endpoints if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -1584,7 +1590,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -1593,7 +1599,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -1601,7 +1607,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -1618,24 +1624,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -1648,17 +1654,17 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" @@ -1668,10 +1674,10 @@ spec: description: "ContainerResizePolicy represents resource resize policy for the container." properties: resourceName: - description: "Name of the resource to which this resource resize policy applies. Supported values: cpu, memory." + description: "Name of the resource to which this resource resize policy applies.\nSupported values: cpu, memory." type: "string" restartPolicy: - description: "Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired." + description: "Restart policy to apply when specified resource is resized.\nIf not specified, it defaults to NotRequired." type: "string" required: - "resourceName" @@ -1680,15 +1686,15 @@ spec: type: "array" x-kubernetes-list-type: "atomic" resources: - description: "Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Compute Resources required by this container.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -1704,7 +1710,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -1713,20 +1719,20 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" restartPolicy: - description: "RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is \"Always\". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as \"Always\" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy \"Always\" will be shut down. This lifecycle differs from normal init containers and is often referred to as a \"sidecar\" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed." + description: "RestartPolicy defines the restart behavior of individual containers in a pod.\nThis field may only be set for init containers, and the only allowed value is \"Always\".\nFor non-init containers or when this field is not specified,\nthe restart behavior is defined by the Pod's restart policy and the container type.\nSetting the RestartPolicy as \"Always\" for the init container will have the following effect:\nthis init container will be continually restarted on\nexit until all regular containers have terminated. Once all regular\ncontainers have completed, all init containers with restartPolicy \"Always\"\nwill be shut down. This lifecycle differs from normal init containers and\nis often referred to as a \"sidecar\" container. Although this init\ncontainer still starts in the init container sequence, it does not wait\nfor the container to complete before proceeding to the next init\ncontainer. Instead, the next init container starts immediately after this\ninit container is started, or after any startupProbe has successfully\ncompleted." type: "string" securityContext: - description: "SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" + description: "SecurityContext defines the security options the container should be run with.\nIf set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.\nMore info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -1742,27 +1748,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -1778,48 +1784,48 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" startupProbe: - description: "StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "StartupProbe indicates that the Pod has successfully initialized.\nIf specified, no other probes are executed until this completes successfully.\nIf this probe fails, the Pod will be restarted, just as if the livenessProbe failed.\nThis can be used to provide different probe parameters at the beginning of a Pod's lifecycle,\nwhen it might take a long time to load data or warm a cache, than during steady-state operation.\nThis cannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -1830,7 +1836,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -1839,7 +1845,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -1847,7 +1853,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -1864,24 +1870,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -1894,34 +1900,34 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" stdin: - description: "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false." + description: "Whether this container should allocate a buffer for stdin in the container runtime. If this\nis not set, reads from stdin in the container will always result in EOF.\nDefault is false." type: "boolean" stdinOnce: - description: "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false" + description: "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false" type: "boolean" terminationMessagePath: - description: "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated." + description: "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated." type: "string" terminationMessagePolicy: - description: "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated." + description: "Indicate how the termination message should be populated. File will use the contents of\nterminationMessagePath to populate the container status message on both success and failure.\nFallbackToLogsOnError will use the last chunk of container log output if the termination\nmessage file is empty and the container exited with an error.\nThe log output is limited to 2048 bytes or 80 lines, whichever is smaller.\nDefaults to File.\nCannot be updated." type: "string" tty: - description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false." + description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.\nDefault is false." type: "boolean" volumeDevices: description: "volumeDevices is the list of block devices to be used by the container." @@ -1940,27 +1946,27 @@ spec: type: "object" type: "array" volumeMounts: - description: "Pod volumes to mount into the container's filesystem. Cannot be updated." + description: "Pod volumes to mount into the container's filesystem.\nCannot be updated." items: description: "VolumeMount describes a mounting of a Volume within a container." properties: mountPath: - description: "Path within the container at which the volume should be mounted. Must not contain ':'." + description: "Path within the container at which the volume should be mounted. Must\nnot contain ':'." type: "string" mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" name: description: "This must match the Name of a Volume." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" required: - "mountPath" @@ -1968,7 +1974,7 @@ spec: type: "object" type: "array" workingDir: - description: "Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated." + description: "Container's working directory.\nIf not specified, the container runtime's default will be used, which\nmight be configured in the container image.\nCannot be updated." type: "string" required: - "name" @@ -1989,7 +1995,7 @@ spec: type: "object" type: "object" multiPodPerHost: - description: "If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod if aerospikeNetworkPolicy defined has one of the network types: 'hostInternal', 'hostExternal', 'configuredIP' NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. \n If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user." + description: "If set true then multiple pods can be created per Kubernetes Node.\nThis will create a NodePort service for each Pod if aerospikeNetworkPolicy defined\nhas one of the network types: 'hostInternal', 'hostExternal', 'configuredIP'\nNodePort, as the name implies, opens a specific port on all the Kubernetes Nodes ,\nand any traffic that is sent to this port is forwarded to the service.\nHere service picks a random port in range (30000-32767), so these port should be open.\n\n\nIf set false then only single pod can be created per Kubernetes Node.\nThis will create Pods using hostPort setting.\nThe container port will be exposed to the external network at :,\nwhere the hostIP is the IP address of the Kubernetes Node where the container is running and\nthe hostPort is the port requested by the user." type: "boolean" nodeSelector: additionalProperties: @@ -1997,28 +2003,28 @@ spec: description: "NodeSelector constraints for this pod." type: "object" securityContext: - description: "SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field." + description: "SecurityContext holds pod-level security attributes and common container settings.\nOptional: Defaults to empty. See type description for default values of each field." properties: fsGroup: - description: "A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: \n 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- \n If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows." + description: "A special supplemental group that applies to all containers in a pod.\nSome volume types allow the Kubelet to change the ownership of that volume\nto be owned by the pod:\n\n\n1. The owning GID will be the FSGroup\n2. The setgid bit is set (new files created in the volume will be owned by FSGroup)\n3. The permission bits are OR'd with rw-rw----\n\n\nIf unset, the Kubelet will not modify the ownership and permissions of any volume.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" fsGroupChangePolicy: - description: "fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are \"OnRootMismatch\" and \"Always\". If not specified, \"Always\" is used. Note that this field cannot be set when spec.os.name is windows." + description: "fsGroupChangePolicy defines behavior of changing ownership and permission of the volume\nbefore being exposed inside Pod. This field will only apply to\nvolume types which support fsGroup based ownership(and permissions).\nIt will have no effect on ephemeral volume types such as: secret, configmaps\nand emptydir.\nValid values are \"OnRootMismatch\" and \"Always\". If not specified, \"Always\" is used.\nNote that this field cannot be set when spec.os.name is windows." type: "string" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence\nfor that container.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence\nfor that container.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to all containers.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in SecurityContext. If set in\nboth SecurityContext and PodSecurityContext, the value specified in SecurityContext\ntakes precedence for that container.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -2034,25 +2040,25 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by the containers in this pod.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" supplementalGroups: - description: "A list of groups applied to the first process run in each container, in addition to the container's primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows." + description: "A list of groups applied to the first process run in each container, in addition\nto the container's primary GID, the fsGroup (if specified), and group memberships\ndefined in the container image for the uid of the container process. If unspecified,\nno additional groups are added to any container. Note that group memberships\ndefined in the container image for the uid of the container process are still effective,\neven if they are not included in this list.\nNote that this field cannot be set when spec.os.name is windows." items: format: "int64" type: "integer" type: "array" sysctls: - description: "Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows." + description: "Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported\nsysctls (by the container runtime) might fail to launch.\nNote that this field cannot be set when spec.os.name is windows." items: description: "Sysctl defines a kernel parameter to be set" properties: @@ -2068,19 +2074,19 @@ spec: type: "object" type: "array" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options within a container's SecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" @@ -2090,17 +2096,17 @@ spec: description: "A single application container that you want to run within a pod." properties: args: - description: "Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Arguments to the entrypoint.\nThe container image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" command: - description: "Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Entrypoint array. Not executed within a shell.\nThe container image's ENTRYPOINT is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" env: - description: "List of environment variables to set in the container. Cannot be updated." + description: "List of environment variables to set in the container.\nCannot be updated." items: description: "EnvVar represents an environment variable present in a Container." properties: @@ -2108,7 +2114,7 @@ spec: description: "Name of the environment variable. Must be a C_IDENTIFIER." type: "string" value: - description: "Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\"." + description: "Variable references $(VAR_NAME) are expanded\nusing the previously defined environment variables in the container and\nany service environment variables. If a variable cannot be resolved,\nthe reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.\n\"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\".\nEscaped references will never be expanded, regardless of whether the variable\nexists or not.\nDefaults to \"\"." type: "string" valueFrom: description: "Source for the environment variable's value. Cannot be used if value is not empty." @@ -2120,7 +2126,7 @@ spec: description: "The key to select." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -2130,7 +2136,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" fieldRef: - description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." + description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,\nspec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." properties: apiVersion: description: "Version of the schema the FieldPath is written in terms of, defaults to \"v1\"." @@ -2143,7 +2149,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" resourceFieldRef: - description: "Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." + description: "Selects a resource of the container: only resources limits and requests\n(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." properties: containerName: description: "Container name: required for volumes, optional for env vars" @@ -2169,7 +2175,7 @@ spec: description: "The key of the secret to select from. Must be a valid secret key." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -2184,7 +2190,7 @@ spec: type: "object" type: "array" envFrom: - description: "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated." + description: "List of sources to populate environment variables in the container.\nThe keys defined within a source must be a C_IDENTIFIER. All invalid keys\nwill be reported as an event when the container is starting. When a key exists in multiple\nsources, the value associated with the last source will take precedence.\nValues defined by an Env with a duplicate key will take precedence.\nCannot be updated." items: description: "EnvFromSource represents the source of a set of ConfigMaps" properties: @@ -2192,7 +2198,7 @@ spec: description: "The ConfigMap to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -2206,7 +2212,7 @@ spec: description: "The Secret to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -2216,22 +2222,22 @@ spec: type: "object" type: "array" image: - description: "Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets." + description: "Container image name.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets." type: "string" imagePullPolicy: - description: "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images" + description: "Image pull policy.\nOne of Always, Never, IfNotPresent.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/containers/images#updating-images" type: "string" lifecycle: - description: "Actions that the management system should take in response to container lifecycle events. Cannot be updated." + description: "Actions that the management system should take in response to container lifecycle events.\nCannot be updated." properties: postStart: - description: "PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PostStart is called immediately after a container is created. If the handler fails,\nthe container is terminated and restarted according to its restart policy.\nOther management of the container blocks until the hook completes.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -2240,7 +2246,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -2248,7 +2254,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -2265,10 +2271,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -2284,7 +2290,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -2293,20 +2299,20 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" type: "object" preStop: - description: "PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PreStop is called immediately before a container is terminated due to an\nAPI request or management event such as liveness/startup probe failure,\npreemption, resource contention, etc. The handler is not called if the\ncontainer crashes or exits. The Pod's termination grace period countdown begins before the\nPreStop hook is executed. Regardless of the outcome of the handler, the\ncontainer will eventually terminate within the Pod's termination grace\nperiod (unless delayed by finalizers). Other management of the container blocks until the hook completes\nor until the termination grace period is reached.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -2315,7 +2321,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -2323,7 +2329,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -2340,10 +2346,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -2359,7 +2365,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -2368,7 +2374,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" @@ -2376,19 +2382,19 @@ spec: type: "object" type: "object" livenessProbe: - description: "Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container liveness.\nContainer will be restarted if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -2399,7 +2405,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -2408,7 +2414,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -2416,7 +2422,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -2433,24 +2439,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -2463,45 +2469,45 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" name: - description: "Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated." + description: "Name of the container specified as a DNS_LABEL.\nEach container in a pod must have a unique name (DNS_LABEL).\nCannot be updated." type: "string" ports: - description: "List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default \"0.0.0.0\" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated." + description: "List of ports to expose from the container. Not specifying a port here\nDOES NOT prevent that port from being exposed. Any port which is\nlistening on the default \"0.0.0.0\" address inside a container will be\naccessible from the network.\nModifying this array with strategic merge patch may corrupt the data.\nFor more information See https://github.com/kubernetes/kubernetes/issues/108255.\nCannot be updated." items: description: "ContainerPort represents a network port in a single container." properties: containerPort: - description: "Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536." + description: "Number of port to expose on the pod's IP address.\nThis must be a valid port number, 0 < x < 65536." format: "int32" type: "integer" hostIP: description: "What host IP to bind the external port to." type: "string" hostPort: - description: "Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this." + description: "Number of port to expose on the host.\nIf specified, this must be a valid port number, 0 < x < 65536.\nIf HostNetwork is specified, this must match ContainerPort.\nMost containers do not need this." format: "int32" type: "integer" name: - description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services." + description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each\nnamed port in a pod must have a unique name. Name for the port that can be\nreferred to by services." type: "string" protocol: default: "TCP" - description: "Protocol for port. Must be UDP, TCP, or SCTP. Defaults to \"TCP\"." + description: "Protocol for port. Must be UDP, TCP, or SCTP.\nDefaults to \"TCP\"." type: "string" required: - "containerPort" @@ -2512,19 +2518,19 @@ spec: - "protocol" x-kubernetes-list-type: "map" readinessProbe: - description: "Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container service readiness.\nContainer will be removed from service endpoints if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -2535,7 +2541,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -2544,7 +2550,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -2552,7 +2558,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -2569,24 +2575,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -2599,17 +2605,17 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" @@ -2619,10 +2625,10 @@ spec: description: "ContainerResizePolicy represents resource resize policy for the container." properties: resourceName: - description: "Name of the resource to which this resource resize policy applies. Supported values: cpu, memory." + description: "Name of the resource to which this resource resize policy applies.\nSupported values: cpu, memory." type: "string" restartPolicy: - description: "Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired." + description: "Restart policy to apply when specified resource is resized.\nIf not specified, it defaults to NotRequired." type: "string" required: - "resourceName" @@ -2631,15 +2637,15 @@ spec: type: "array" x-kubernetes-list-type: "atomic" resources: - description: "Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Compute Resources required by this container.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -2655,7 +2661,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -2664,20 +2670,20 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" restartPolicy: - description: "RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is \"Always\". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as \"Always\" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy \"Always\" will be shut down. This lifecycle differs from normal init containers and is often referred to as a \"sidecar\" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed." + description: "RestartPolicy defines the restart behavior of individual containers in a pod.\nThis field may only be set for init containers, and the only allowed value is \"Always\".\nFor non-init containers or when this field is not specified,\nthe restart behavior is defined by the Pod's restart policy and the container type.\nSetting the RestartPolicy as \"Always\" for the init container will have the following effect:\nthis init container will be continually restarted on\nexit until all regular containers have terminated. Once all regular\ncontainers have completed, all init containers with restartPolicy \"Always\"\nwill be shut down. This lifecycle differs from normal init containers and\nis often referred to as a \"sidecar\" container. Although this init\ncontainer still starts in the init container sequence, it does not wait\nfor the container to complete before proceeding to the next init\ncontainer. Instead, the next init container starts immediately after this\ninit container is started, or after any startupProbe has successfully\ncompleted." type: "string" securityContext: - description: "SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" + description: "SecurityContext defines the security options the container should be run with.\nIf set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.\nMore info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -2693,27 +2699,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -2729,48 +2735,48 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" startupProbe: - description: "StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "StartupProbe indicates that the Pod has successfully initialized.\nIf specified, no other probes are executed until this completes successfully.\nIf this probe fails, the Pod will be restarted, just as if the livenessProbe failed.\nThis can be used to provide different probe parameters at the beginning of a Pod's lifecycle,\nwhen it might take a long time to load data or warm a cache, than during steady-state operation.\nThis cannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -2781,7 +2787,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -2790,7 +2796,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -2798,7 +2804,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -2815,24 +2821,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -2845,34 +2851,34 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" stdin: - description: "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false." + description: "Whether this container should allocate a buffer for stdin in the container runtime. If this\nis not set, reads from stdin in the container will always result in EOF.\nDefault is false." type: "boolean" stdinOnce: - description: "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false" + description: "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false" type: "boolean" terminationMessagePath: - description: "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated." + description: "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated." type: "string" terminationMessagePolicy: - description: "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated." + description: "Indicate how the termination message should be populated. File will use the contents of\nterminationMessagePath to populate the container status message on both success and failure.\nFallbackToLogsOnError will use the last chunk of container log output if the termination\nmessage file is empty and the container exited with an error.\nThe log output is limited to 2048 bytes or 80 lines, whichever is smaller.\nDefaults to File.\nCannot be updated." type: "string" tty: - description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false." + description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.\nDefault is false." type: "boolean" volumeDevices: description: "volumeDevices is the list of block devices to be used by the container." @@ -2891,27 +2897,27 @@ spec: type: "object" type: "array" volumeMounts: - description: "Pod volumes to mount into the container's filesystem. Cannot be updated." + description: "Pod volumes to mount into the container's filesystem.\nCannot be updated." items: description: "VolumeMount describes a mounting of a Volume within a container." properties: mountPath: - description: "Path within the container at which the volume should be mounted. Must not contain ':'." + description: "Path within the container at which the volume should be mounted. Must\nnot contain ':'." type: "string" mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" name: description: "This must match the Name of a Volume." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" required: - "mountPath" @@ -2919,7 +2925,7 @@ spec: type: "object" type: "array" workingDir: - description: "Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated." + description: "Container's working directory.\nIf not specified, the container runtime's default will be used, which\nmight be configured in the container image.\nCannot be updated." type: "string" required: - "name" @@ -2928,35 +2934,35 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" type: "object" rackConfig: - description: "RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration" + description: "RackConfig Configures the operator to deploy rack aware Aerospike cluster.\nPods will be deployed in given racks based on given configuration" properties: maxIgnorablePods: anyOf: - type: "integer" - type: "string" - description: "MaxIgnorablePods is the maximum number/percentage of pending/failed pods in a rack that are ignored while assessing cluster stability. Pods identified using this value are not considered part of the cluster. Additionally, in SC mode clusters, these pods are removed from the roster. This is particularly useful when some pods are stuck in pending/failed state due to any scheduling issues and cannot be fixed by simply updating the CR. It enables the operator to perform specific operations on the cluster, like changing Aerospike configurations, without being hindered by these problematic pods. Remember to set MaxIgnorablePods back to 0 once the required operation is done. This makes sure that later on, all pods are properly counted when evaluating the cluster stability." + description: "MaxIgnorablePods is the maximum number/percentage of pending/failed pods in a rack that are ignored while\nassessing cluster stability. Pods identified using this value are not considered part of the cluster.\nAdditionally, in SC mode clusters, these pods are removed from the roster.\nThis is particularly useful when some pods are stuck in pending/failed state due to any scheduling issues and\ncannot be fixed by simply updating the CR.\nIt enables the operator to perform specific operations on the cluster, like changing Aerospike configurations,\nwithout being hindered by these problematic pods.\nRemember to set MaxIgnorablePods back to 0 once the required operation is done.\nThis makes sure that later on, all pods are properly counted when evaluating the cluster stability." x-kubernetes-int-or-string: true namespaces: description: "List of Aerospike namespaces for which rack feature will be enabled" @@ -2973,7 +2979,7 @@ spec: type: "object" x-kubernetes-preserve-unknown-fields: true effectiveAerospikeConfig: - description: "Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global Aerospike config" + description: "Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global\nAerospike config" type: "object" x-kubernetes-preserve-unknown-fields: true effectivePodSpec: @@ -2986,9 +2992,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -2996,16 +3002,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3017,16 +3023,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3047,26 +3053,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3078,16 +3084,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3108,7 +3114,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -3116,21 +3122,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3142,38 +3148,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3185,23 +3191,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -3210,26 +3216,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3241,38 +3247,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3284,17 +3290,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -3305,7 +3311,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -3313,21 +3319,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3339,38 +3345,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3382,23 +3388,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -3407,26 +3413,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3438,38 +3444,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3481,17 +3487,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -3507,23 +3513,23 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" @@ -3535,7 +3541,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -3557,7 +3563,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -3565,7 +3571,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -3580,7 +3586,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -3602,7 +3608,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -3610,7 +3616,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -3633,16 +3639,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -3652,7 +3658,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -3684,16 +3690,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -3705,7 +3711,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -3726,16 +3732,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -3753,11 +3759,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -3765,11 +3771,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -3777,7 +3783,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -3785,16 +3791,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -3802,7 +3808,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -3825,16 +3831,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3846,7 +3852,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -3869,14 +3875,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -3884,11 +3890,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -3899,12 +3905,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -3935,9 +3941,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -3945,16 +3951,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3966,16 +3972,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3996,26 +4002,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -4027,16 +4033,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -4057,7 +4063,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -4065,21 +4071,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4091,38 +4097,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4134,23 +4140,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -4159,26 +4165,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4190,38 +4196,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4233,17 +4239,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -4254,7 +4260,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -4262,21 +4268,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4288,38 +4294,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4331,23 +4337,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -4356,26 +4362,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4387,38 +4393,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4430,17 +4436,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -4456,29 +4462,29 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" type: "object" rackLabel: - description: "RackLabel for setting rack affinity. Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: }" + description: "RackLabel for setting rack affinity.\nRack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: }" type: "string" region: description: "Region name for setting rack affinity. Rack pods will be deployed to given Region" @@ -4490,7 +4496,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -4512,7 +4518,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -4520,7 +4526,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -4535,7 +4541,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -4557,7 +4563,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -4565,7 +4571,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -4588,16 +4594,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -4607,7 +4613,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -4639,16 +4645,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -4660,7 +4666,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -4681,16 +4687,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -4708,11 +4714,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -4720,11 +4726,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -4732,7 +4738,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -4740,16 +4746,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -4757,7 +4763,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -4780,16 +4786,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4801,7 +4807,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -4824,14 +4830,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -4839,11 +4845,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -4854,12 +4860,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -4901,17 +4907,17 @@ spec: type: "string" type: "array" seedsFinderServices: - description: "SeedsFinderServices creates additional Kubernetes service that allow clients to discover Aerospike cluster nodes." + description: "SeedsFinderServices creates additional Kubernetes service that allow\nclients to discover Aerospike cluster nodes." properties: loadBalancer: - description: "LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster." + description: "LoadBalancer created to discover Aerospike Cluster nodes from outside of\nKubernetes cluster." properties: annotations: additionalProperties: type: "string" type: "object" externalTrafficPolicy: - description: "ServiceExternalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's \"externally-facing\" addresses (NodePorts, ExternalIPs, and LoadBalancer IPs." + description: "ServiceExternalTrafficPolicy describes how nodes distribute service traffic they\nreceive on one of the Service's \"externally-facing\" addresses (NodePorts, ExternalIPs,\nand LoadBalancer IPs." enum: - "Local" - "Cluster" @@ -4930,7 +4936,7 @@ spec: description: "The name of the port exposed on load balancer service." type: "string" targetPort: - description: "TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. If there is no tls port configured then regular port from network.service is used." + description: "TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config.\nIf there is no tls port configured then regular port from network.service is used." format: "int32" maximum: 65535.0 minimum: 1024.0 @@ -4948,7 +4954,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -4970,7 +4976,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -4978,7 +4984,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -4993,7 +4999,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -5015,7 +5021,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -5023,7 +5029,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -5046,16 +5052,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -5065,7 +5071,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -5097,16 +5103,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -5118,7 +5124,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -5139,16 +5145,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -5166,11 +5172,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -5178,11 +5184,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -5190,7 +5196,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -5198,16 +5204,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -5215,7 +5221,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -5238,16 +5244,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -5259,7 +5265,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -5282,14 +5288,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -5297,11 +5303,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -5312,12 +5318,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -5336,10 +5342,10 @@ spec: description: "ValidationPolicy controls validation of the Aerospike cluster resource." properties: skipWorkDirValidate: - description: "skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. Defaults to false." + description: "skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage.\nDefaults to false." type: "boolean" skipXdrDlogFileValidate: - description: "ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. Defaults to false." + description: "ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage.\nDefaults to false." type: "boolean" required: - "skipWorkDirValidate" @@ -5355,7 +5361,7 @@ spec: nullable: true properties: aerospikeAccessControl: - description: "AerospikeAccessControl has the Aerospike roles and users definitions. Required if aerospike cluster security is enabled." + description: "AerospikeAccessControl has the Aerospike roles and users definitions.\nRequired if aerospike cluster security is enabled." properties: adminPolicy: description: "AerospikeClientAdminPolicy specify the aerospike client admin policy for access control operations." @@ -5417,7 +5423,7 @@ spec: type: "array" x-kubernetes-list-type: "set" secretName: - description: "SecretName has secret info created by user. User needs to create this secret from password literal. eg: kubectl create secret generic dev-db-secret --from-literal=password='password'" + description: "SecretName has secret info created by user. User needs to create this secret from password literal.\neg: kubectl create secret generic dev-db-secret --from-literal=password='password'" type: "string" required: - "name" @@ -5440,7 +5446,7 @@ spec: description: "AerospikeNetworkPolicy specifies how clients and tools access the Aerospike cluster." properties: access: - description: "AccessType is the type of network address to use for Aerospike access address. Defaults to hostInternal." + description: "AccessType is the type of network address to use for Aerospike access address.\nDefaults to hostInternal." enum: - "pod" - "hostInternal" @@ -5449,7 +5455,7 @@ spec: - "customInterface" type: "string" alternateAccess: - description: "AlternateAccessType is the type of network address to use for Aerospike alternate access address. Defaults to hostExternal." + description: "AlternateAccessType is the type of network address to use for Aerospike alternate access address.\nDefaults to hostExternal." enum: - "pod" - "hostInternal" @@ -5458,48 +5464,48 @@ spec: - "customInterface" type: "string" customAccessNetworkNames: - description: "CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' access type." + description: "CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' access type." items: type: "string" minItems: 1 type: "array" customAlternateAccessNetworkNames: - description: "CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' alternateAccess type" + description: "CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike\nalternate access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' alternateAccess type" items: type: "string" minItems: 1 type: "array" customFabricNetworkNames: - description: "CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' fabric type" + description: "CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' fabric type" items: type: "string" minItems: 1 type: "array" customTLSAccessNetworkNames: - description: "CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAccess type" + description: "CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' tlsAccess type" items: type: "string" minItems: 1 type: "array" customTLSAlternateAccessNetworkNames: - description: "CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAlternateAccess type" + description: "CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS\nalternate access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' tlsAlternateAccess type" items: type: "string" minItems: 1 type: "array" customTLSFabricNetworkNames: - description: "CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsFabric type" + description: "CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network\ninterfaces to the pod.\nRequired with 'customInterface' tlsFabric type" items: type: "string" minItems: 1 type: "array" fabric: - description: "FabricType is the type of network address to use for Aerospike fabric address. Defaults is empty meaning all interfaces 'any'." + description: "FabricType is the type of network address to use for Aerospike fabric address.\nDefaults is empty meaning all interfaces 'any'." enum: - "customInterface" type: "string" tlsAccess: - description: "TLSAccessType is the type of network address to use for Aerospike TLS access address. Defaults to hostInternal." + description: "TLSAccessType is the type of network address to use for Aerospike TLS access address.\nDefaults to hostInternal." enum: - "pod" - "hostInternal" @@ -5508,7 +5514,7 @@ spec: - "customInterface" type: "string" tlsAlternateAccess: - description: "TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. Defaults to hostExternal." + description: "TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address.\nDefaults to hostExternal." enum: - "pod" - "hostInternal" @@ -5517,7 +5523,7 @@ spec: - "customInterface" type: "string" tlsFabric: - description: "TLSFabricType is the type of network address to use for Aerospike TLS fabric address. Defaults is empty meaning all interfaces 'any'." + description: "TLSFabricType is the type of network address to use for Aerospike TLS fabric address.\nDefaults is empty meaning all interfaces 'any'." enum: - "customInterface" type: "string" @@ -5526,13 +5532,13 @@ spec: description: "Disable the PodDisruptionBudget creation for the Aerospike cluster." type: "boolean" enableDynamicConfigUpdate: - description: "EnableDynamicConfigUpdate enables dynamic config update flow of the operator. If enabled, operator will try to update the Aerospike config dynamically. In case of inconsistent state during dynamic config update, operator falls back to rolling restart." + description: "EnableDynamicConfigUpdate enables dynamic config update flow of the operator.\nIf enabled, operator will try to update the Aerospike config dynamically.\nIn case of inconsistent state during dynamic config update, operator falls back to rolling restart." type: "boolean" image: description: "Aerospike server image" type: "string" isReadinessProbeEnabled: - description: "IsReadinessProbeEnabled tells whether the readiness probe is present in all pods or not. Moreover, PodDisruptionBudget should be created for the Aerospike cluster only when this field is enabled." + description: "IsReadinessProbeEnabled tells whether the readiness probe is present in all pods or not.\nMoreover, PodDisruptionBudget should be created for the Aerospike cluster only when this field is enabled." type: "boolean" k8sNodeBlockList: description: "K8sNodeBlockList is a list of Kubernetes nodes which are not used for Aerospike pods." @@ -5543,10 +5549,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "MaxUnavailable is the percentage/number of pods that can be allowed to go down or unavailable before application disruption. This value is used to create PodDisruptionBudget. Defaults to 1." + description: "MaxUnavailable is the percentage/number of pods that can be allowed to go down or unavailable before application\ndisruption. This value is used to create PodDisruptionBudget. Defaults to 1." x-kubernetes-int-or-string: true multiPodPerHost: - description: "If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod. NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. \n If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user. Deprecated: MultiPodPerHost is now part of podSpec" + description: "If set true then multiple pods can be created per Kubernetes Node.\nThis will create a NodePort service for each Pod.\nNodePort, as the name implies, opens a specific port on all the Kubernetes Nodes ,\nand any traffic that is sent to this port is forwarded to the service.\nHere service picks a random port in range (30000-32767), so these port should be open.\n\n\nIf set false then only single pod can be created per Kubernetes Node.\nThis will create Pods using hostPort setting.\nThe container port will be exposed to the external network at :,\nwhere the hostIP is the IP address of the Kubernetes Node where the container is running and\nthe hostPort is the port requested by the user.\nDeprecated: MultiPodPerHost is now part of podSpec" type: "boolean" operations: description: "Operations is a list of on-demand operation to be performed on the Aerospike cluster." @@ -5575,7 +5581,7 @@ spec: description: "Certificates to connect to Aerospike. If omitted then certs are taken from the secret 'aerospike-secret'." properties: certPathInOperator: - description: "AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem." + description: "AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike\ncluster.\nAll paths are on operator's filesystem." properties: caCertsPath: type: "string" @@ -5623,18 +5629,18 @@ spec: description: "Additional configuration for create Aerospike pods." properties: aerospikeContainer: - description: "AerospikeContainerSpec configures the aerospike-server container created by the operator." + description: "AerospikeContainerSpec configures the aerospike-server container\ncreated by the operator." properties: resources: - description: "Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests." + description: "Define resources requests and limits for Aerospike Server Container.\nPlease contact aerospike for proper sizing exercise\nOnly Memory and Cpu resources can be given\nResources.Limits should be more than Resources.Requests." properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -5650,7 +5656,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -5659,17 +5665,17 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" securityContext: description: "SecurityContext that will be added to aerospike-server container created by operator." properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -5685,27 +5691,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -5721,51 +5727,57 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" type: "object" aerospikeInitContainer: - description: "AerospikeInitContainerSpec configures the aerospike-init container created by the operator." + description: "AerospikeInitContainerSpec configures the aerospike-init container\ncreated by the operator." properties: + imageNameAndTag: + description: "ImageNameAndTag is the name:tag of aerospike-init container image" + type: "string" imageRegistry: - description: "ImageRegistry is the name of image registry for aerospike-init container image ImageRegistry, e.g. docker.io, redhat.access.com" + description: "ImageRegistry is the name of image registry for aerospike-init container image\nImageRegistry, e.g. docker.io, redhat.access.com" + type: "string" + imageRegistryNamespace: + description: "ImageRegistryNamespace is the name of namespace in registry for aerospike-init container image" type: "string" resources: - description: "Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests." + description: "Define resources requests and limits for Aerospike init Container.\nOnly Memory and Cpu resources can be given\nResources.Limits should be more than Resources.Requests." properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -5781,7 +5793,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -5790,17 +5802,17 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" securityContext: description: "SecurityContext that will be added to aerospike-init container created by operator." properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -5816,27 +5828,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -5852,31 +5864,31 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" @@ -5888,9 +5900,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -5898,16 +5910,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -5919,16 +5931,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -5949,26 +5961,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -5980,16 +5992,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -6010,7 +6022,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -6018,21 +6030,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6044,38 +6056,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6087,23 +6099,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -6112,26 +6124,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6143,38 +6155,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6186,17 +6198,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -6207,7 +6219,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -6215,21 +6227,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6241,38 +6253,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6284,23 +6296,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -6309,26 +6321,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6340,38 +6352,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6383,17 +6395,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -6402,15 +6414,15 @@ spec: type: "object" type: "object" dnsConfig: - description: "DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None`" + description: "DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy.\nThis is required field when dnsPolicy is set to `None`" properties: nameservers: - description: "A list of DNS name server IP addresses. This will be appended to the base nameservers generated from DNSPolicy. Duplicated nameservers will be removed." + description: "A list of DNS name server IP addresses.\nThis will be appended to the base nameservers generated from DNSPolicy.\nDuplicated nameservers will be removed." items: type: "string" type: "array" options: - description: "A list of DNS resolver options. This will be merged with the base options generated from DNSPolicy. Duplicated entries will be removed. Resolution options given in Options will override those that appear in the base DNSPolicy." + description: "A list of DNS resolver options.\nThis will be merged with the base options generated from DNSPolicy.\nDuplicated entries will be removed. Resolution options given in Options\nwill override those that appear in the base DNSPolicy." items: description: "PodDNSConfigOption defines DNS resolver options of a pod." properties: @@ -6422,27 +6434,27 @@ spec: type: "object" type: "array" searches: - description: "A list of DNS search domains for host-name lookup. This will be appended to the base search paths generated from DNSPolicy. Duplicated search paths will be removed." + description: "A list of DNS search domains for host-name lookup.\nThis will be appended to the base search paths generated from DNSPolicy.\nDuplicated search paths will be removed." items: type: "string" type: "array" type: "object" dnsPolicy: - description: "DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet" + description: "DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy.\nIf hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet" type: "string" effectiveDNSPolicy: description: "Effective value of the DNSPolicy" type: "string" hostNetwork: - description: "HostNetwork enables host networking for the pod. To enable hostNetwork multiPodPerHost must be false." + description: "HostNetwork enables host networking for the pod.\nTo enable hostNetwork multiPodPerHost must be false." type: "boolean" imagePullSecrets: - description: "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod" + description: "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of\nthe images used by this PodSpec.\nMore info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod" items: - description: "LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace." + description: "LocalObjectReference contains enough information to let you locate the\nreferenced object inside the same namespace." properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -6453,17 +6465,17 @@ spec: description: "A single application container that you want to run within a pod." properties: args: - description: "Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Arguments to the entrypoint.\nThe container image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" command: - description: "Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Entrypoint array. Not executed within a shell.\nThe container image's ENTRYPOINT is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" env: - description: "List of environment variables to set in the container. Cannot be updated." + description: "List of environment variables to set in the container.\nCannot be updated." items: description: "EnvVar represents an environment variable present in a Container." properties: @@ -6471,7 +6483,7 @@ spec: description: "Name of the environment variable. Must be a C_IDENTIFIER." type: "string" value: - description: "Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\"." + description: "Variable references $(VAR_NAME) are expanded\nusing the previously defined environment variables in the container and\nany service environment variables. If a variable cannot be resolved,\nthe reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.\n\"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\".\nEscaped references will never be expanded, regardless of whether the variable\nexists or not.\nDefaults to \"\"." type: "string" valueFrom: description: "Source for the environment variable's value. Cannot be used if value is not empty." @@ -6483,7 +6495,7 @@ spec: description: "The key to select." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -6493,7 +6505,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" fieldRef: - description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." + description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,\nspec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." properties: apiVersion: description: "Version of the schema the FieldPath is written in terms of, defaults to \"v1\"." @@ -6506,7 +6518,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" resourceFieldRef: - description: "Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." + description: "Selects a resource of the container: only resources limits and requests\n(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." properties: containerName: description: "Container name: required for volumes, optional for env vars" @@ -6532,7 +6544,7 @@ spec: description: "The key of the secret to select from. Must be a valid secret key." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -6547,7 +6559,7 @@ spec: type: "object" type: "array" envFrom: - description: "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated." + description: "List of sources to populate environment variables in the container.\nThe keys defined within a source must be a C_IDENTIFIER. All invalid keys\nwill be reported as an event when the container is starting. When a key exists in multiple\nsources, the value associated with the last source will take precedence.\nValues defined by an Env with a duplicate key will take precedence.\nCannot be updated." items: description: "EnvFromSource represents the source of a set of ConfigMaps" properties: @@ -6555,7 +6567,7 @@ spec: description: "The ConfigMap to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -6569,7 +6581,7 @@ spec: description: "The Secret to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -6579,22 +6591,22 @@ spec: type: "object" type: "array" image: - description: "Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets." + description: "Container image name.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets." type: "string" imagePullPolicy: - description: "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images" + description: "Image pull policy.\nOne of Always, Never, IfNotPresent.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/containers/images#updating-images" type: "string" lifecycle: - description: "Actions that the management system should take in response to container lifecycle events. Cannot be updated." + description: "Actions that the management system should take in response to container lifecycle events.\nCannot be updated." properties: postStart: - description: "PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PostStart is called immediately after a container is created. If the handler fails,\nthe container is terminated and restarted according to its restart policy.\nOther management of the container blocks until the hook completes.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -6603,7 +6615,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -6611,7 +6623,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -6628,10 +6640,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -6647,7 +6659,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -6656,20 +6668,20 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" type: "object" preStop: - description: "PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PreStop is called immediately before a container is terminated due to an\nAPI request or management event such as liveness/startup probe failure,\npreemption, resource contention, etc. The handler is not called if the\ncontainer crashes or exits. The Pod's termination grace period countdown begins before the\nPreStop hook is executed. Regardless of the outcome of the handler, the\ncontainer will eventually terminate within the Pod's termination grace\nperiod (unless delayed by finalizers). Other management of the container blocks until the hook completes\nor until the termination grace period is reached.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -6678,7 +6690,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -6686,7 +6698,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -6703,10 +6715,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -6722,7 +6734,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -6731,7 +6743,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" @@ -6739,19 +6751,19 @@ spec: type: "object" type: "object" livenessProbe: - description: "Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container liveness.\nContainer will be restarted if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -6762,7 +6774,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -6771,7 +6783,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -6779,7 +6791,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -6796,24 +6808,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -6826,45 +6838,45 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" name: - description: "Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated." + description: "Name of the container specified as a DNS_LABEL.\nEach container in a pod must have a unique name (DNS_LABEL).\nCannot be updated." type: "string" ports: - description: "List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default \"0.0.0.0\" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated." + description: "List of ports to expose from the container. Not specifying a port here\nDOES NOT prevent that port from being exposed. Any port which is\nlistening on the default \"0.0.0.0\" address inside a container will be\naccessible from the network.\nModifying this array with strategic merge patch may corrupt the data.\nFor more information See https://github.com/kubernetes/kubernetes/issues/108255.\nCannot be updated." items: description: "ContainerPort represents a network port in a single container." properties: containerPort: - description: "Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536." + description: "Number of port to expose on the pod's IP address.\nThis must be a valid port number, 0 < x < 65536." format: "int32" type: "integer" hostIP: description: "What host IP to bind the external port to." type: "string" hostPort: - description: "Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this." + description: "Number of port to expose on the host.\nIf specified, this must be a valid port number, 0 < x < 65536.\nIf HostNetwork is specified, this must match ContainerPort.\nMost containers do not need this." format: "int32" type: "integer" name: - description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services." + description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each\nnamed port in a pod must have a unique name. Name for the port that can be\nreferred to by services." type: "string" protocol: default: "TCP" - description: "Protocol for port. Must be UDP, TCP, or SCTP. Defaults to \"TCP\"." + description: "Protocol for port. Must be UDP, TCP, or SCTP.\nDefaults to \"TCP\"." type: "string" required: - "containerPort" @@ -6875,19 +6887,19 @@ spec: - "protocol" x-kubernetes-list-type: "map" readinessProbe: - description: "Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container service readiness.\nContainer will be removed from service endpoints if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -6898,7 +6910,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -6907,7 +6919,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -6915,7 +6927,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -6932,24 +6944,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -6962,17 +6974,17 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" @@ -6982,10 +6994,10 @@ spec: description: "ContainerResizePolicy represents resource resize policy for the container." properties: resourceName: - description: "Name of the resource to which this resource resize policy applies. Supported values: cpu, memory." + description: "Name of the resource to which this resource resize policy applies.\nSupported values: cpu, memory." type: "string" restartPolicy: - description: "Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired." + description: "Restart policy to apply when specified resource is resized.\nIf not specified, it defaults to NotRequired." type: "string" required: - "resourceName" @@ -6994,15 +7006,15 @@ spec: type: "array" x-kubernetes-list-type: "atomic" resources: - description: "Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Compute Resources required by this container.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -7018,7 +7030,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -7027,20 +7039,20 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" restartPolicy: - description: "RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is \"Always\". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as \"Always\" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy \"Always\" will be shut down. This lifecycle differs from normal init containers and is often referred to as a \"sidecar\" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed." + description: "RestartPolicy defines the restart behavior of individual containers in a pod.\nThis field may only be set for init containers, and the only allowed value is \"Always\".\nFor non-init containers or when this field is not specified,\nthe restart behavior is defined by the Pod's restart policy and the container type.\nSetting the RestartPolicy as \"Always\" for the init container will have the following effect:\nthis init container will be continually restarted on\nexit until all regular containers have terminated. Once all regular\ncontainers have completed, all init containers with restartPolicy \"Always\"\nwill be shut down. This lifecycle differs from normal init containers and\nis often referred to as a \"sidecar\" container. Although this init\ncontainer still starts in the init container sequence, it does not wait\nfor the container to complete before proceeding to the next init\ncontainer. Instead, the next init container starts immediately after this\ninit container is started, or after any startupProbe has successfully\ncompleted." type: "string" securityContext: - description: "SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" + description: "SecurityContext defines the security options the container should be run with.\nIf set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.\nMore info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -7056,27 +7068,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -7092,48 +7104,48 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" startupProbe: - description: "StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "StartupProbe indicates that the Pod has successfully initialized.\nIf specified, no other probes are executed until this completes successfully.\nIf this probe fails, the Pod will be restarted, just as if the livenessProbe failed.\nThis can be used to provide different probe parameters at the beginning of a Pod's lifecycle,\nwhen it might take a long time to load data or warm a cache, than during steady-state operation.\nThis cannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -7144,7 +7156,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -7153,7 +7165,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7161,7 +7173,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -7178,24 +7190,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -7208,34 +7220,34 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" stdin: - description: "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false." + description: "Whether this container should allocate a buffer for stdin in the container runtime. If this\nis not set, reads from stdin in the container will always result in EOF.\nDefault is false." type: "boolean" stdinOnce: - description: "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false" + description: "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false" type: "boolean" terminationMessagePath: - description: "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated." + description: "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated." type: "string" terminationMessagePolicy: - description: "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated." + description: "Indicate how the termination message should be populated. File will use the contents of\nterminationMessagePath to populate the container status message on both success and failure.\nFallbackToLogsOnError will use the last chunk of container log output if the termination\nmessage file is empty and the container exited with an error.\nThe log output is limited to 2048 bytes or 80 lines, whichever is smaller.\nDefaults to File.\nCannot be updated." type: "string" tty: - description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false." + description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.\nDefault is false." type: "boolean" volumeDevices: description: "volumeDevices is the list of block devices to be used by the container." @@ -7254,27 +7266,27 @@ spec: type: "object" type: "array" volumeMounts: - description: "Pod volumes to mount into the container's filesystem. Cannot be updated." + description: "Pod volumes to mount into the container's filesystem.\nCannot be updated." items: description: "VolumeMount describes a mounting of a Volume within a container." properties: mountPath: - description: "Path within the container at which the volume should be mounted. Must not contain ':'." + description: "Path within the container at which the volume should be mounted. Must\nnot contain ':'." type: "string" mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" name: description: "This must match the Name of a Volume." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" required: - "mountPath" @@ -7282,7 +7294,7 @@ spec: type: "object" type: "array" workingDir: - description: "Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated." + description: "Container's working directory.\nIf not specified, the container runtime's default will be used, which\nmight be configured in the container image.\nCannot be updated." type: "string" required: - "name" @@ -7303,7 +7315,7 @@ spec: type: "object" type: "object" multiPodPerHost: - description: "If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod if aerospikeNetworkPolicy defined has one of the network types: 'hostInternal', 'hostExternal', 'configuredIP' NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. \n If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user." + description: "If set true then multiple pods can be created per Kubernetes Node.\nThis will create a NodePort service for each Pod if aerospikeNetworkPolicy defined\nhas one of the network types: 'hostInternal', 'hostExternal', 'configuredIP'\nNodePort, as the name implies, opens a specific port on all the Kubernetes Nodes ,\nand any traffic that is sent to this port is forwarded to the service.\nHere service picks a random port in range (30000-32767), so these port should be open.\n\n\nIf set false then only single pod can be created per Kubernetes Node.\nThis will create Pods using hostPort setting.\nThe container port will be exposed to the external network at :,\nwhere the hostIP is the IP address of the Kubernetes Node where the container is running and\nthe hostPort is the port requested by the user." type: "boolean" nodeSelector: additionalProperties: @@ -7311,28 +7323,28 @@ spec: description: "NodeSelector constraints for this pod." type: "object" securityContext: - description: "SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field." + description: "SecurityContext holds pod-level security attributes and common container settings.\nOptional: Defaults to empty. See type description for default values of each field." properties: fsGroup: - description: "A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: \n 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- \n If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows." + description: "A special supplemental group that applies to all containers in a pod.\nSome volume types allow the Kubelet to change the ownership of that volume\nto be owned by the pod:\n\n\n1. The owning GID will be the FSGroup\n2. The setgid bit is set (new files created in the volume will be owned by FSGroup)\n3. The permission bits are OR'd with rw-rw----\n\n\nIf unset, the Kubelet will not modify the ownership and permissions of any volume.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" fsGroupChangePolicy: - description: "fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are \"OnRootMismatch\" and \"Always\". If not specified, \"Always\" is used. Note that this field cannot be set when spec.os.name is windows." + description: "fsGroupChangePolicy defines behavior of changing ownership and permission of the volume\nbefore being exposed inside Pod. This field will only apply to\nvolume types which support fsGroup based ownership(and permissions).\nIt will have no effect on ephemeral volume types such as: secret, configmaps\nand emptydir.\nValid values are \"OnRootMismatch\" and \"Always\". If not specified, \"Always\" is used.\nNote that this field cannot be set when spec.os.name is windows." type: "string" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence\nfor that container.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence\nfor that container.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to all containers.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in SecurityContext. If set in\nboth SecurityContext and PodSecurityContext, the value specified in SecurityContext\ntakes precedence for that container.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -7348,25 +7360,25 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by the containers in this pod.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" supplementalGroups: - description: "A list of groups applied to the first process run in each container, in addition to the container's primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows." + description: "A list of groups applied to the first process run in each container, in addition\nto the container's primary GID, the fsGroup (if specified), and group memberships\ndefined in the container image for the uid of the container process. If unspecified,\nno additional groups are added to any container. Note that group memberships\ndefined in the container image for the uid of the container process are still effective,\neven if they are not included in this list.\nNote that this field cannot be set when spec.os.name is windows." items: format: "int64" type: "integer" type: "array" sysctls: - description: "Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows." + description: "Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported\nsysctls (by the container runtime) might fail to launch.\nNote that this field cannot be set when spec.os.name is windows." items: description: "Sysctl defines a kernel parameter to be set" properties: @@ -7382,19 +7394,19 @@ spec: type: "object" type: "array" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options within a container's SecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" @@ -7404,17 +7416,17 @@ spec: description: "A single application container that you want to run within a pod." properties: args: - description: "Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Arguments to the entrypoint.\nThe container image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" command: - description: "Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Entrypoint array. Not executed within a shell.\nThe container image's ENTRYPOINT is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" env: - description: "List of environment variables to set in the container. Cannot be updated." + description: "List of environment variables to set in the container.\nCannot be updated." items: description: "EnvVar represents an environment variable present in a Container." properties: @@ -7422,7 +7434,7 @@ spec: description: "Name of the environment variable. Must be a C_IDENTIFIER." type: "string" value: - description: "Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\"." + description: "Variable references $(VAR_NAME) are expanded\nusing the previously defined environment variables in the container and\nany service environment variables. If a variable cannot be resolved,\nthe reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.\n\"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\".\nEscaped references will never be expanded, regardless of whether the variable\nexists or not.\nDefaults to \"\"." type: "string" valueFrom: description: "Source for the environment variable's value. Cannot be used if value is not empty." @@ -7434,7 +7446,7 @@ spec: description: "The key to select." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -7444,7 +7456,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" fieldRef: - description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." + description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,\nspec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." properties: apiVersion: description: "Version of the schema the FieldPath is written in terms of, defaults to \"v1\"." @@ -7457,7 +7469,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" resourceFieldRef: - description: "Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." + description: "Selects a resource of the container: only resources limits and requests\n(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." properties: containerName: description: "Container name: required for volumes, optional for env vars" @@ -7483,7 +7495,7 @@ spec: description: "The key of the secret to select from. Must be a valid secret key." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -7498,7 +7510,7 @@ spec: type: "object" type: "array" envFrom: - description: "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated." + description: "List of sources to populate environment variables in the container.\nThe keys defined within a source must be a C_IDENTIFIER. All invalid keys\nwill be reported as an event when the container is starting. When a key exists in multiple\nsources, the value associated with the last source will take precedence.\nValues defined by an Env with a duplicate key will take precedence.\nCannot be updated." items: description: "EnvFromSource represents the source of a set of ConfigMaps" properties: @@ -7506,7 +7518,7 @@ spec: description: "The ConfigMap to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -7520,7 +7532,7 @@ spec: description: "The Secret to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -7530,22 +7542,22 @@ spec: type: "object" type: "array" image: - description: "Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets." + description: "Container image name.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets." type: "string" imagePullPolicy: - description: "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images" + description: "Image pull policy.\nOne of Always, Never, IfNotPresent.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/containers/images#updating-images" type: "string" lifecycle: - description: "Actions that the management system should take in response to container lifecycle events. Cannot be updated." + description: "Actions that the management system should take in response to container lifecycle events.\nCannot be updated." properties: postStart: - description: "PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PostStart is called immediately after a container is created. If the handler fails,\nthe container is terminated and restarted according to its restart policy.\nOther management of the container blocks until the hook completes.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -7554,7 +7566,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7562,7 +7574,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -7579,10 +7591,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -7598,7 +7610,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -7607,20 +7619,20 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" type: "object" preStop: - description: "PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PreStop is called immediately before a container is terminated due to an\nAPI request or management event such as liveness/startup probe failure,\npreemption, resource contention, etc. The handler is not called if the\ncontainer crashes or exits. The Pod's termination grace period countdown begins before the\nPreStop hook is executed. Regardless of the outcome of the handler, the\ncontainer will eventually terminate within the Pod's termination grace\nperiod (unless delayed by finalizers). Other management of the container blocks until the hook completes\nor until the termination grace period is reached.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -7629,7 +7641,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7637,7 +7649,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -7654,10 +7666,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -7673,7 +7685,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -7682,7 +7694,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" @@ -7690,19 +7702,19 @@ spec: type: "object" type: "object" livenessProbe: - description: "Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container liveness.\nContainer will be restarted if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -7713,7 +7725,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -7722,7 +7734,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7730,7 +7742,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -7747,24 +7759,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -7777,45 +7789,45 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" name: - description: "Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated." + description: "Name of the container specified as a DNS_LABEL.\nEach container in a pod must have a unique name (DNS_LABEL).\nCannot be updated." type: "string" ports: - description: "List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default \"0.0.0.0\" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated." + description: "List of ports to expose from the container. Not specifying a port here\nDOES NOT prevent that port from being exposed. Any port which is\nlistening on the default \"0.0.0.0\" address inside a container will be\naccessible from the network.\nModifying this array with strategic merge patch may corrupt the data.\nFor more information See https://github.com/kubernetes/kubernetes/issues/108255.\nCannot be updated." items: description: "ContainerPort represents a network port in a single container." properties: containerPort: - description: "Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536." + description: "Number of port to expose on the pod's IP address.\nThis must be a valid port number, 0 < x < 65536." format: "int32" type: "integer" hostIP: description: "What host IP to bind the external port to." type: "string" hostPort: - description: "Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this." + description: "Number of port to expose on the host.\nIf specified, this must be a valid port number, 0 < x < 65536.\nIf HostNetwork is specified, this must match ContainerPort.\nMost containers do not need this." format: "int32" type: "integer" name: - description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services." + description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each\nnamed port in a pod must have a unique name. Name for the port that can be\nreferred to by services." type: "string" protocol: default: "TCP" - description: "Protocol for port. Must be UDP, TCP, or SCTP. Defaults to \"TCP\"." + description: "Protocol for port. Must be UDP, TCP, or SCTP.\nDefaults to \"TCP\"." type: "string" required: - "containerPort" @@ -7826,19 +7838,19 @@ spec: - "protocol" x-kubernetes-list-type: "map" readinessProbe: - description: "Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container service readiness.\nContainer will be removed from service endpoints if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -7849,7 +7861,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -7858,7 +7870,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7866,7 +7878,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -7883,24 +7895,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -7913,17 +7925,17 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" @@ -7933,10 +7945,10 @@ spec: description: "ContainerResizePolicy represents resource resize policy for the container." properties: resourceName: - description: "Name of the resource to which this resource resize policy applies. Supported values: cpu, memory." + description: "Name of the resource to which this resource resize policy applies.\nSupported values: cpu, memory." type: "string" restartPolicy: - description: "Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired." + description: "Restart policy to apply when specified resource is resized.\nIf not specified, it defaults to NotRequired." type: "string" required: - "resourceName" @@ -7945,15 +7957,15 @@ spec: type: "array" x-kubernetes-list-type: "atomic" resources: - description: "Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Compute Resources required by this container.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -7969,7 +7981,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -7978,20 +7990,20 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" restartPolicy: - description: "RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is \"Always\". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as \"Always\" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy \"Always\" will be shut down. This lifecycle differs from normal init containers and is often referred to as a \"sidecar\" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed." + description: "RestartPolicy defines the restart behavior of individual containers in a pod.\nThis field may only be set for init containers, and the only allowed value is \"Always\".\nFor non-init containers or when this field is not specified,\nthe restart behavior is defined by the Pod's restart policy and the container type.\nSetting the RestartPolicy as \"Always\" for the init container will have the following effect:\nthis init container will be continually restarted on\nexit until all regular containers have terminated. Once all regular\ncontainers have completed, all init containers with restartPolicy \"Always\"\nwill be shut down. This lifecycle differs from normal init containers and\nis often referred to as a \"sidecar\" container. Although this init\ncontainer still starts in the init container sequence, it does not wait\nfor the container to complete before proceeding to the next init\ncontainer. Instead, the next init container starts immediately after this\ninit container is started, or after any startupProbe has successfully\ncompleted." type: "string" securityContext: - description: "SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" + description: "SecurityContext defines the security options the container should be run with.\nIf set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.\nMore info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -8007,27 +8019,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -8043,48 +8055,48 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" startupProbe: - description: "StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "StartupProbe indicates that the Pod has successfully initialized.\nIf specified, no other probes are executed until this completes successfully.\nIf this probe fails, the Pod will be restarted, just as if the livenessProbe failed.\nThis can be used to provide different probe parameters at the beginning of a Pod's lifecycle,\nwhen it might take a long time to load data or warm a cache, than during steady-state operation.\nThis cannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -8095,7 +8107,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -8104,7 +8116,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -8112,7 +8124,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -8129,24 +8141,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -8159,34 +8171,34 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" stdin: - description: "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false." + description: "Whether this container should allocate a buffer for stdin in the container runtime. If this\nis not set, reads from stdin in the container will always result in EOF.\nDefault is false." type: "boolean" stdinOnce: - description: "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false" + description: "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false" type: "boolean" terminationMessagePath: - description: "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated." + description: "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated." type: "string" terminationMessagePolicy: - description: "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated." + description: "Indicate how the termination message should be populated. File will use the contents of\nterminationMessagePath to populate the container status message on both success and failure.\nFallbackToLogsOnError will use the last chunk of container log output if the termination\nmessage file is empty and the container exited with an error.\nThe log output is limited to 2048 bytes or 80 lines, whichever is smaller.\nDefaults to File.\nCannot be updated." type: "string" tty: - description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false." + description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.\nDefault is false." type: "boolean" volumeDevices: description: "volumeDevices is the list of block devices to be used by the container." @@ -8205,27 +8217,27 @@ spec: type: "object" type: "array" volumeMounts: - description: "Pod volumes to mount into the container's filesystem. Cannot be updated." + description: "Pod volumes to mount into the container's filesystem.\nCannot be updated." items: description: "VolumeMount describes a mounting of a Volume within a container." properties: mountPath: - description: "Path within the container at which the volume should be mounted. Must not contain ':'." + description: "Path within the container at which the volume should be mounted. Must\nnot contain ':'." type: "string" mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" name: description: "This must match the Name of a Volume." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" required: - "mountPath" @@ -8233,7 +8245,7 @@ spec: type: "object" type: "array" workingDir: - description: "Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated." + description: "Container's working directory.\nIf not specified, the container runtime's default will be used, which\nmight be configured in the container image.\nCannot be updated." type: "string" required: - "name" @@ -8242,30 +8254,30 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" type: "object" pods: additionalProperties: - description: "AerospikePodStatus contains the Aerospike specific status of the Aerospike server pods." + description: "AerospikePodStatus contains the Aerospike specific status of the Aerospike\nserver pods." properties: aerospike: description: "Aerospike server instance summary for this pod." @@ -8310,12 +8322,12 @@ spec: description: "AerospikeConfigHash is ripemd160 hash of aerospikeConfig used by this pod" type: "string" dirtyVolumes: - description: "DirtyVolumes is the list of volume names that are removed from aerospike namespaces and will be cleaned during init if they are reused in any namespace." + description: "DirtyVolumes is the list of volume names that are removed\nfrom aerospike namespaces and will be cleaned during init\nif they are reused in any namespace." items: type: "string" type: "array" dynamicConfigUpdateStatus: - description: "DynamicConfigUpdateStatus is the status of dynamic config update operation. Empty \"\" status means successful update." + description: "DynamicConfigUpdateStatus is the status of dynamic config update operation.\nEmpty \"\" status means successful update." enum: - "Failed" - "PartiallyFailed" @@ -8334,7 +8346,7 @@ spec: description: "InitImage is the Aerospike init image this pod's init container is running." type: "string" initializedVolumes: - description: "InitializedVolumes is the list of volume names that have already been initialized." + description: "InitializedVolumes is the list of volume names that have already been\ninitialized." items: type: "string" type: "array" @@ -8362,17 +8374,17 @@ spec: - "podPort" - "podSpecHash" type: "object" - description: "Pods has Aerospike specific status of the pods. This is map instead of the conventional map as list convention to allow each pod to patch update its own status. The map key is the name of the pod." + description: "Pods has Aerospike specific status of the pods.\nThis is map instead of the conventional map as list convention to allow each pod to patch update its own\nstatus. The map key is the name of the pod." type: "object" rackConfig: - description: "RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration" + description: "RackConfig Configures the operator to deploy rack aware Aerospike cluster.\nPods will be deployed in given racks based on given configuration" nullable: true properties: maxIgnorablePods: anyOf: - type: "integer" - type: "string" - description: "MaxIgnorablePods is the maximum number/percentage of pending/failed pods in a rack that are ignored while assessing cluster stability. Pods identified using this value are not considered part of the cluster. Additionally, in SC mode clusters, these pods are removed from the roster. This is particularly useful when some pods are stuck in pending/failed state due to any scheduling issues and cannot be fixed by simply updating the CR. It enables the operator to perform specific operations on the cluster, like changing Aerospike configurations, without being hindered by these problematic pods. Remember to set MaxIgnorablePods back to 0 once the required operation is done. This makes sure that later on, all pods are properly counted when evaluating the cluster stability." + description: "MaxIgnorablePods is the maximum number/percentage of pending/failed pods in a rack that are ignored while\nassessing cluster stability. Pods identified using this value are not considered part of the cluster.\nAdditionally, in SC mode clusters, these pods are removed from the roster.\nThis is particularly useful when some pods are stuck in pending/failed state due to any scheduling issues and\ncannot be fixed by simply updating the CR.\nIt enables the operator to perform specific operations on the cluster, like changing Aerospike configurations,\nwithout being hindered by these problematic pods.\nRemember to set MaxIgnorablePods back to 0 once the required operation is done.\nThis makes sure that later on, all pods are properly counted when evaluating the cluster stability." x-kubernetes-int-or-string: true namespaces: description: "List of Aerospike namespaces for which rack feature will be enabled" @@ -8389,7 +8401,7 @@ spec: type: "object" x-kubernetes-preserve-unknown-fields: true effectiveAerospikeConfig: - description: "Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global Aerospike config" + description: "Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global\nAerospike config" type: "object" x-kubernetes-preserve-unknown-fields: true effectivePodSpec: @@ -8402,9 +8414,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -8412,16 +8424,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -8433,16 +8445,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -8463,26 +8475,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -8494,16 +8506,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -8524,7 +8536,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -8532,21 +8544,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8558,38 +8570,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8601,23 +8613,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -8626,26 +8638,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8657,38 +8669,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8700,17 +8712,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -8721,7 +8733,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -8729,21 +8741,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8755,38 +8767,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8798,23 +8810,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -8823,26 +8835,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8854,38 +8866,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8897,17 +8909,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -8923,23 +8935,23 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" @@ -8951,7 +8963,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -8973,7 +8985,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -8981,7 +8993,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -8996,7 +9008,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -9018,7 +9030,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -9026,7 +9038,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -9049,16 +9061,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -9068,7 +9080,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -9100,16 +9112,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -9121,7 +9133,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -9142,16 +9154,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -9169,11 +9181,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -9181,11 +9193,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -9193,7 +9205,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -9201,16 +9213,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -9218,7 +9230,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -9241,16 +9253,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9262,7 +9274,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -9285,14 +9297,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -9300,11 +9312,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -9315,12 +9327,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -9351,9 +9363,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -9361,16 +9373,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -9382,16 +9394,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -9412,26 +9424,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -9443,16 +9455,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -9473,7 +9485,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -9481,21 +9493,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9507,38 +9519,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9550,23 +9562,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -9575,26 +9587,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9606,38 +9618,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9649,17 +9661,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -9670,7 +9682,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -9678,21 +9690,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9704,38 +9716,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9747,23 +9759,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -9772,26 +9784,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9803,38 +9815,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9846,17 +9858,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -9872,29 +9884,29 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" type: "object" rackLabel: - description: "RackLabel for setting rack affinity. Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: }" + description: "RackLabel for setting rack affinity.\nRack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: }" type: "string" region: description: "Region name for setting rack affinity. Rack pods will be deployed to given Region" @@ -9906,7 +9918,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -9928,7 +9940,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -9936,7 +9948,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -9951,7 +9963,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -9973,7 +9985,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -9981,7 +9993,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -10004,16 +10016,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -10023,7 +10035,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -10055,16 +10067,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -10076,7 +10088,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -10097,16 +10109,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -10124,11 +10136,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -10136,11 +10148,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -10148,7 +10160,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -10156,16 +10168,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -10173,7 +10185,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -10196,16 +10208,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -10217,7 +10229,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -10240,14 +10252,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -10255,11 +10267,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -10270,12 +10282,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -10312,15 +10324,15 @@ spec: x-kubernetes-int-or-string: true type: "object" resources: - description: "Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Deprecated: Resources field is now part of containerSpec" + description: "Define resources requests and limits for Aerospike Server Container.\nPlease contact aerospike for proper sizing exercise\nOnly Memory and Cpu resources can be given\nDeprecated: Resources field is now part of containerSpec" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -10336,7 +10348,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -10345,7 +10357,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" rosterNodeBlockList: @@ -10357,14 +10369,14 @@ spec: description: "SeedsFinderServices describes services which are used for seeding Aerospike nodes." properties: loadBalancer: - description: "LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster." + description: "LoadBalancer created to discover Aerospike Cluster nodes from outside of\nKubernetes cluster." properties: annotations: additionalProperties: type: "string" type: "object" externalTrafficPolicy: - description: "ServiceExternalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's \"externally-facing\" addresses (NodePorts, ExternalIPs, and LoadBalancer IPs." + description: "ServiceExternalTrafficPolicy describes how nodes distribute service traffic they\nreceive on one of the Service's \"externally-facing\" addresses (NodePorts, ExternalIPs,\nand LoadBalancer IPs." enum: - "Local" - "Cluster" @@ -10383,7 +10395,7 @@ spec: description: "The name of the port exposed on load balancer service." type: "string" targetPort: - description: "TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. If there is no tls port configured then regular port from network.service is used." + description: "TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config.\nIf there is no tls port configured then regular port from network.service is used." format: "int32" maximum: 65535.0 minimum: 1024.0 @@ -10401,7 +10413,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -10423,7 +10435,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -10431,7 +10443,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -10446,7 +10458,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -10468,7 +10480,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -10476,7 +10488,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -10499,16 +10511,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -10518,7 +10530,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -10550,16 +10562,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -10571,7 +10583,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -10592,16 +10604,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -10619,11 +10631,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -10631,11 +10643,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -10643,7 +10655,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -10651,16 +10663,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -10668,7 +10680,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -10691,16 +10703,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -10712,7 +10724,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -10735,14 +10747,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -10750,11 +10762,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -10765,12 +10777,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -10789,10 +10801,10 @@ spec: description: "ValidationPolicy controls validation of the Aerospike cluster resource." properties: skipWorkDirValidate: - description: "skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. Defaults to false." + description: "skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage.\nDefaults to false." type: "boolean" skipXdrDlogFileValidate: - description: "ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. Defaults to false." + description: "ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage.\nDefaults to false." type: "boolean" required: - "skipWorkDirValidate" diff --git a/crd-catalog/aerospike/aerospike-kubernetes-operator/asdb.aerospike.com/v1beta1/aerospikeclusters.yaml b/crd-catalog/aerospike/aerospike-kubernetes-operator/asdb.aerospike.com/v1beta1/aerospikeclusters.yaml index fd4c2627f..9a613abb0 100644 --- a/crd-catalog/aerospike/aerospike-kubernetes-operator/asdb.aerospike.com/v1beta1/aerospikeclusters.yaml +++ b/crd-catalog/aerospike/aerospike-kubernetes-operator/asdb.aerospike.com/v1beta1/aerospikeclusters.yaml @@ -3,7 +3,7 @@ kind: "CustomResourceDefinition" metadata: annotations: aerospike-kubernetes-operator/version: "3.3.1" - controller-gen.kubebuilder.io/version: "v0.12.1" + controller-gen.kubebuilder.io/version: "v0.14.0" name: "aerospikeclusters.asdb.aerospike.com" spec: group: "asdb.aerospike.com" @@ -37,10 +37,10 @@ spec: description: "AerospikeCluster is the schema for the AerospikeCluster API" properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -110,7 +110,7 @@ spec: type: "array" x-kubernetes-list-type: "set" secretName: - description: "SecretName has secret info created by user. User needs to create this secret from password literal. eg: kubectl create secret generic dev-db-secret --from-literal=password='password'" + description: "SecretName has secret info created by user. User needs to create this secret from password literal.\neg: kubectl create secret generic dev-db-secret --from-literal=password='password'" type: "string" required: - "name" @@ -132,7 +132,7 @@ spec: description: "AerospikeNetworkPolicy specifies how clients and tools access the Aerospike cluster." properties: access: - description: "AccessType is the type of network address to use for Aerospike access address. Defaults to hostInternal." + description: "AccessType is the type of network address to use for Aerospike access address.\nDefaults to hostInternal." enum: - "pod" - "hostInternal" @@ -141,7 +141,7 @@ spec: - "customInterface" type: "string" alternateAccess: - description: "AlternateAccessType is the type of network address to use for Aerospike alternate access address. Defaults to hostExternal." + description: "AlternateAccessType is the type of network address to use for Aerospike alternate access address.\nDefaults to hostExternal." enum: - "pod" - "hostInternal" @@ -150,48 +150,48 @@ spec: - "customInterface" type: "string" customAccessNetworkNames: - description: "CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' access type." + description: "CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' access type." items: type: "string" minItems: 1 type: "array" customAlternateAccessNetworkNames: - description: "CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' alternateAccess type" + description: "CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike\nalternate access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' alternateAccess type" items: type: "string" minItems: 1 type: "array" customFabricNetworkNames: - description: "CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' fabric type" + description: "CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' fabric type" items: type: "string" minItems: 1 type: "array" customTLSAccessNetworkNames: - description: "CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAccess type" + description: "CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' tlsAccess type" items: type: "string" minItems: 1 type: "array" customTLSAlternateAccessNetworkNames: - description: "CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAlternateAccess type" + description: "CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS\nalternate access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' tlsAlternateAccess type" items: type: "string" minItems: 1 type: "array" customTLSFabricNetworkNames: - description: "CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsFabric type" + description: "CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network\ninterfaces to the pod.\nRequired with 'customInterface' tlsFabric type" items: type: "string" minItems: 1 type: "array" fabric: - description: "FabricType is the type of network address to use for Aerospike fabric address. Defaults is empty meaning all interfaces 'any'." + description: "FabricType is the type of network address to use for Aerospike fabric address.\nDefaults is empty meaning all interfaces 'any'." enum: - "customInterface" type: "string" tlsAccess: - description: "TLSAccessType is the type of network address to use for Aerospike TLS access address. Defaults to hostInternal." + description: "TLSAccessType is the type of network address to use for Aerospike TLS access address.\nDefaults to hostInternal." enum: - "pod" - "hostInternal" @@ -200,7 +200,7 @@ spec: - "customInterface" type: "string" tlsAlternateAccess: - description: "TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. Defaults to hostExternal." + description: "TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address.\nDefaults to hostExternal." enum: - "pod" - "hostInternal" @@ -209,7 +209,7 @@ spec: - "customInterface" type: "string" tlsFabric: - description: "TLSFabricType is the type of network address to use for Aerospike TLS fabric address. Defaults is empty meaning all interfaces 'any'." + description: "TLSFabricType is the type of network address to use for Aerospike TLS fabric address.\nDefaults is empty meaning all interfaces 'any'." enum: - "customInterface" type: "string" @@ -221,7 +221,7 @@ spec: description: "Certificates to connect to Aerospike." properties: certPathInOperator: - description: "AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem." + description: "AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike\ncluster.\nAll paths are on operator's filesystem." properties: caCertsPath: type: "string" @@ -262,18 +262,18 @@ spec: description: "Specify additional configuration for the Aerospike pods" properties: aerospikeContainer: - description: "AerospikeContainerSpec configures the aerospike-server container created by the operator." + description: "AerospikeContainerSpec configures the aerospike-server container\ncreated by the operator." properties: resources: - description: "Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests." + description: "Define resources requests and limits for Aerospike Server Container.\nPlease contact aerospike for proper sizing exercise\nOnly Memory and Cpu resources can be given\nResources.Limits should be more than Resources.Requests." properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -289,7 +289,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -298,17 +298,17 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" securityContext: description: "SecurityContext that will be added to aerospike-server container created by operator." properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -324,27 +324,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -360,51 +360,51 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" type: "object" aerospikeInitContainer: - description: "AerospikeInitContainerSpec configures the aerospike-init container created by the operator." + description: "AerospikeInitContainerSpec configures the aerospike-init container\ncreated by the operator." properties: imageRegistry: - description: "ImageRegistry is the name of image registry for aerospike-init container image ImageRegistry, e.g. docker.io, redhat.access.com" + description: "ImageRegistry is the name of image registry for aerospike-init container image\nImageRegistry, e.g. docker.io, redhat.access.com" type: "string" resources: - description: "Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests." + description: "Define resources requests and limits for Aerospike init Container.\nOnly Memory and Cpu resources can be given\nResources.Limits should be more than Resources.Requests." properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -420,7 +420,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -429,17 +429,17 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" securityContext: description: "SecurityContext that will be added to aerospike-init container created by operator." properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -455,27 +455,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -491,31 +491,31 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" @@ -527,9 +527,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -537,16 +537,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -558,16 +558,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -588,26 +588,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -619,16 +619,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -649,7 +649,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -657,21 +657,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -683,38 +683,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -726,23 +726,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -751,26 +751,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -782,38 +782,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -825,17 +825,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -846,7 +846,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -854,21 +854,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -880,38 +880,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -923,23 +923,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -948,26 +948,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -979,38 +979,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1022,17 +1022,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -1041,15 +1041,15 @@ spec: type: "object" type: "object" dnsConfig: - description: "DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None`" + description: "DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy.\nThis is required field when dnsPolicy is set to `None`" properties: nameservers: - description: "A list of DNS name server IP addresses. This will be appended to the base nameservers generated from DNSPolicy. Duplicated nameservers will be removed." + description: "A list of DNS name server IP addresses.\nThis will be appended to the base nameservers generated from DNSPolicy.\nDuplicated nameservers will be removed." items: type: "string" type: "array" options: - description: "A list of DNS resolver options. This will be merged with the base options generated from DNSPolicy. Duplicated entries will be removed. Resolution options given in Options will override those that appear in the base DNSPolicy." + description: "A list of DNS resolver options.\nThis will be merged with the base options generated from DNSPolicy.\nDuplicated entries will be removed. Resolution options given in Options\nwill override those that appear in the base DNSPolicy." items: description: "PodDNSConfigOption defines DNS resolver options of a pod." properties: @@ -1061,27 +1061,27 @@ spec: type: "object" type: "array" searches: - description: "A list of DNS search domains for host-name lookup. This will be appended to the base search paths generated from DNSPolicy. Duplicated search paths will be removed." + description: "A list of DNS search domains for host-name lookup.\nThis will be appended to the base search paths generated from DNSPolicy.\nDuplicated search paths will be removed." items: type: "string" type: "array" type: "object" dnsPolicy: - description: "DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet" + description: "DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy.\nIf hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet" type: "string" effectiveDNSPolicy: description: "Effective value of the DNSPolicy" type: "string" hostNetwork: - description: "HostNetwork enables host networking for the pod. To enable hostNetwork multiPodPerHost must be false." + description: "HostNetwork enables host networking for the pod.\nTo enable hostNetwork multiPodPerHost must be false." type: "boolean" imagePullSecrets: - description: "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod" + description: "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of\nthe images used by this PodSpec.\nMore info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod" items: - description: "LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace." + description: "LocalObjectReference contains enough information to let you locate the\nreferenced object inside the same namespace." properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -1092,17 +1092,17 @@ spec: description: "A single application container that you want to run within a pod." properties: args: - description: "Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Arguments to the entrypoint.\nThe container image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" command: - description: "Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Entrypoint array. Not executed within a shell.\nThe container image's ENTRYPOINT is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" env: - description: "List of environment variables to set in the container. Cannot be updated." + description: "List of environment variables to set in the container.\nCannot be updated." items: description: "EnvVar represents an environment variable present in a Container." properties: @@ -1110,7 +1110,7 @@ spec: description: "Name of the environment variable. Must be a C_IDENTIFIER." type: "string" value: - description: "Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\"." + description: "Variable references $(VAR_NAME) are expanded\nusing the previously defined environment variables in the container and\nany service environment variables. If a variable cannot be resolved,\nthe reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.\n\"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\".\nEscaped references will never be expanded, regardless of whether the variable\nexists or not.\nDefaults to \"\"." type: "string" valueFrom: description: "Source for the environment variable's value. Cannot be used if value is not empty." @@ -1122,7 +1122,7 @@ spec: description: "The key to select." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -1132,7 +1132,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" fieldRef: - description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." + description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,\nspec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." properties: apiVersion: description: "Version of the schema the FieldPath is written in terms of, defaults to \"v1\"." @@ -1145,7 +1145,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" resourceFieldRef: - description: "Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." + description: "Selects a resource of the container: only resources limits and requests\n(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." properties: containerName: description: "Container name: required for volumes, optional for env vars" @@ -1171,7 +1171,7 @@ spec: description: "The key of the secret to select from. Must be a valid secret key." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -1186,7 +1186,7 @@ spec: type: "object" type: "array" envFrom: - description: "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated." + description: "List of sources to populate environment variables in the container.\nThe keys defined within a source must be a C_IDENTIFIER. All invalid keys\nwill be reported as an event when the container is starting. When a key exists in multiple\nsources, the value associated with the last source will take precedence.\nValues defined by an Env with a duplicate key will take precedence.\nCannot be updated." items: description: "EnvFromSource represents the source of a set of ConfigMaps" properties: @@ -1194,7 +1194,7 @@ spec: description: "The ConfigMap to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -1208,7 +1208,7 @@ spec: description: "The Secret to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -1218,22 +1218,22 @@ spec: type: "object" type: "array" image: - description: "Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets." + description: "Container image name.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets." type: "string" imagePullPolicy: - description: "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images" + description: "Image pull policy.\nOne of Always, Never, IfNotPresent.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/containers/images#updating-images" type: "string" lifecycle: - description: "Actions that the management system should take in response to container lifecycle events. Cannot be updated." + description: "Actions that the management system should take in response to container lifecycle events.\nCannot be updated." properties: postStart: - description: "PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PostStart is called immediately after a container is created. If the handler fails,\nthe container is terminated and restarted according to its restart policy.\nOther management of the container blocks until the hook completes.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -1242,7 +1242,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -1250,7 +1250,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -1267,10 +1267,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -1286,7 +1286,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -1295,20 +1295,20 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" type: "object" preStop: - description: "PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PreStop is called immediately before a container is terminated due to an\nAPI request or management event such as liveness/startup probe failure,\npreemption, resource contention, etc. The handler is not called if the\ncontainer crashes or exits. The Pod's termination grace period countdown begins before the\nPreStop hook is executed. Regardless of the outcome of the handler, the\ncontainer will eventually terminate within the Pod's termination grace\nperiod (unless delayed by finalizers). Other management of the container blocks until the hook completes\nor until the termination grace period is reached.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -1317,7 +1317,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -1325,7 +1325,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -1342,10 +1342,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -1361,7 +1361,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -1370,7 +1370,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" @@ -1378,19 +1378,19 @@ spec: type: "object" type: "object" livenessProbe: - description: "Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container liveness.\nContainer will be restarted if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -1401,7 +1401,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -1410,7 +1410,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -1418,7 +1418,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -1435,24 +1435,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -1465,45 +1465,45 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" name: - description: "Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated." + description: "Name of the container specified as a DNS_LABEL.\nEach container in a pod must have a unique name (DNS_LABEL).\nCannot be updated." type: "string" ports: - description: "List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default \"0.0.0.0\" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated." + description: "List of ports to expose from the container. Not specifying a port here\nDOES NOT prevent that port from being exposed. Any port which is\nlistening on the default \"0.0.0.0\" address inside a container will be\naccessible from the network.\nModifying this array with strategic merge patch may corrupt the data.\nFor more information See https://github.com/kubernetes/kubernetes/issues/108255.\nCannot be updated." items: description: "ContainerPort represents a network port in a single container." properties: containerPort: - description: "Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536." + description: "Number of port to expose on the pod's IP address.\nThis must be a valid port number, 0 < x < 65536." format: "int32" type: "integer" hostIP: description: "What host IP to bind the external port to." type: "string" hostPort: - description: "Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this." + description: "Number of port to expose on the host.\nIf specified, this must be a valid port number, 0 < x < 65536.\nIf HostNetwork is specified, this must match ContainerPort.\nMost containers do not need this." format: "int32" type: "integer" name: - description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services." + description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each\nnamed port in a pod must have a unique name. Name for the port that can be\nreferred to by services." type: "string" protocol: default: "TCP" - description: "Protocol for port. Must be UDP, TCP, or SCTP. Defaults to \"TCP\"." + description: "Protocol for port. Must be UDP, TCP, or SCTP.\nDefaults to \"TCP\"." type: "string" required: - "containerPort" @@ -1514,19 +1514,19 @@ spec: - "protocol" x-kubernetes-list-type: "map" readinessProbe: - description: "Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container service readiness.\nContainer will be removed from service endpoints if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -1537,7 +1537,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -1546,7 +1546,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -1554,7 +1554,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -1571,24 +1571,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -1601,17 +1601,17 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" @@ -1621,10 +1621,10 @@ spec: description: "ContainerResizePolicy represents resource resize policy for the container." properties: resourceName: - description: "Name of the resource to which this resource resize policy applies. Supported values: cpu, memory." + description: "Name of the resource to which this resource resize policy applies.\nSupported values: cpu, memory." type: "string" restartPolicy: - description: "Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired." + description: "Restart policy to apply when specified resource is resized.\nIf not specified, it defaults to NotRequired." type: "string" required: - "resourceName" @@ -1633,15 +1633,15 @@ spec: type: "array" x-kubernetes-list-type: "atomic" resources: - description: "Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Compute Resources required by this container.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -1657,7 +1657,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -1666,20 +1666,20 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" restartPolicy: - description: "RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is \"Always\". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as \"Always\" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy \"Always\" will be shut down. This lifecycle differs from normal init containers and is often referred to as a \"sidecar\" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed." + description: "RestartPolicy defines the restart behavior of individual containers in a pod.\nThis field may only be set for init containers, and the only allowed value is \"Always\".\nFor non-init containers or when this field is not specified,\nthe restart behavior is defined by the Pod's restart policy and the container type.\nSetting the RestartPolicy as \"Always\" for the init container will have the following effect:\nthis init container will be continually restarted on\nexit until all regular containers have terminated. Once all regular\ncontainers have completed, all init containers with restartPolicy \"Always\"\nwill be shut down. This lifecycle differs from normal init containers and\nis often referred to as a \"sidecar\" container. Although this init\ncontainer still starts in the init container sequence, it does not wait\nfor the container to complete before proceeding to the next init\ncontainer. Instead, the next init container starts immediately after this\ninit container is started, or after any startupProbe has successfully\ncompleted." type: "string" securityContext: - description: "SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" + description: "SecurityContext defines the security options the container should be run with.\nIf set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.\nMore info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -1695,27 +1695,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -1731,48 +1731,48 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" startupProbe: - description: "StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "StartupProbe indicates that the Pod has successfully initialized.\nIf specified, no other probes are executed until this completes successfully.\nIf this probe fails, the Pod will be restarted, just as if the livenessProbe failed.\nThis can be used to provide different probe parameters at the beginning of a Pod's lifecycle,\nwhen it might take a long time to load data or warm a cache, than during steady-state operation.\nThis cannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -1783,7 +1783,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -1792,7 +1792,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -1800,7 +1800,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -1817,24 +1817,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -1847,34 +1847,34 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" stdin: - description: "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false." + description: "Whether this container should allocate a buffer for stdin in the container runtime. If this\nis not set, reads from stdin in the container will always result in EOF.\nDefault is false." type: "boolean" stdinOnce: - description: "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false" + description: "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false" type: "boolean" terminationMessagePath: - description: "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated." + description: "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated." type: "string" terminationMessagePolicy: - description: "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated." + description: "Indicate how the termination message should be populated. File will use the contents of\nterminationMessagePath to populate the container status message on both success and failure.\nFallbackToLogsOnError will use the last chunk of container log output if the termination\nmessage file is empty and the container exited with an error.\nThe log output is limited to 2048 bytes or 80 lines, whichever is smaller.\nDefaults to File.\nCannot be updated." type: "string" tty: - description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false." + description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.\nDefault is false." type: "boolean" volumeDevices: description: "volumeDevices is the list of block devices to be used by the container." @@ -1893,27 +1893,27 @@ spec: type: "object" type: "array" volumeMounts: - description: "Pod volumes to mount into the container's filesystem. Cannot be updated." + description: "Pod volumes to mount into the container's filesystem.\nCannot be updated." items: description: "VolumeMount describes a mounting of a Volume within a container." properties: mountPath: - description: "Path within the container at which the volume should be mounted. Must not contain ':'." + description: "Path within the container at which the volume should be mounted. Must\nnot contain ':'." type: "string" mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" name: description: "This must match the Name of a Volume." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" required: - "mountPath" @@ -1921,7 +1921,7 @@ spec: type: "object" type: "array" workingDir: - description: "Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated." + description: "Container's working directory.\nIf not specified, the container runtime's default will be used, which\nmight be configured in the container image.\nCannot be updated." type: "string" required: - "name" @@ -1942,7 +1942,7 @@ spec: type: "object" type: "object" multiPodPerHost: - description: "If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod. NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. \n If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user." + description: "If set true then multiple pods can be created per Kubernetes Node.\nThis will create a NodePort service for each Pod.\nNodePort, as the name implies, opens a specific port on all the Kubernetes Nodes ,\nand any traffic that is sent to this port is forwarded to the service.\nHere service picks a random port in range (30000-32767), so these port should be open.\n\n\nIf set false then only single pod can be created per Kubernetes Node.\nThis will create Pods using hostPort setting.\nThe container port will be exposed to the external network at :,\nwhere the hostIP is the IP address of the Kubernetes Node where the container is running and\nthe hostPort is the port requested by the user." type: "boolean" nodeSelector: additionalProperties: @@ -1950,28 +1950,28 @@ spec: description: "NodeSelector constraints for this pod." type: "object" securityContext: - description: "SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field." + description: "SecurityContext holds pod-level security attributes and common container settings.\nOptional: Defaults to empty. See type description for default values of each field." properties: fsGroup: - description: "A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: \n 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- \n If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows." + description: "A special supplemental group that applies to all containers in a pod.\nSome volume types allow the Kubelet to change the ownership of that volume\nto be owned by the pod:\n\n\n1. The owning GID will be the FSGroup\n2. The setgid bit is set (new files created in the volume will be owned by FSGroup)\n3. The permission bits are OR'd with rw-rw----\n\n\nIf unset, the Kubelet will not modify the ownership and permissions of any volume.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" fsGroupChangePolicy: - description: "fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are \"OnRootMismatch\" and \"Always\". If not specified, \"Always\" is used. Note that this field cannot be set when spec.os.name is windows." + description: "fsGroupChangePolicy defines behavior of changing ownership and permission of the volume\nbefore being exposed inside Pod. This field will only apply to\nvolume types which support fsGroup based ownership(and permissions).\nIt will have no effect on ephemeral volume types such as: secret, configmaps\nand emptydir.\nValid values are \"OnRootMismatch\" and \"Always\". If not specified, \"Always\" is used.\nNote that this field cannot be set when spec.os.name is windows." type: "string" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence\nfor that container.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence\nfor that container.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to all containers.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in SecurityContext. If set in\nboth SecurityContext and PodSecurityContext, the value specified in SecurityContext\ntakes precedence for that container.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -1987,25 +1987,25 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by the containers in this pod.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" supplementalGroups: - description: "A list of groups applied to the first process run in each container, in addition to the container's primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows." + description: "A list of groups applied to the first process run in each container, in addition\nto the container's primary GID, the fsGroup (if specified), and group memberships\ndefined in the container image for the uid of the container process. If unspecified,\nno additional groups are added to any container. Note that group memberships\ndefined in the container image for the uid of the container process are still effective,\neven if they are not included in this list.\nNote that this field cannot be set when spec.os.name is windows." items: format: "int64" type: "integer" type: "array" sysctls: - description: "Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows." + description: "Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported\nsysctls (by the container runtime) might fail to launch.\nNote that this field cannot be set when spec.os.name is windows." items: description: "Sysctl defines a kernel parameter to be set" properties: @@ -2021,19 +2021,19 @@ spec: type: "object" type: "array" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options within a container's SecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" @@ -2043,17 +2043,17 @@ spec: description: "A single application container that you want to run within a pod." properties: args: - description: "Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Arguments to the entrypoint.\nThe container image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" command: - description: "Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Entrypoint array. Not executed within a shell.\nThe container image's ENTRYPOINT is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" env: - description: "List of environment variables to set in the container. Cannot be updated." + description: "List of environment variables to set in the container.\nCannot be updated." items: description: "EnvVar represents an environment variable present in a Container." properties: @@ -2061,7 +2061,7 @@ spec: description: "Name of the environment variable. Must be a C_IDENTIFIER." type: "string" value: - description: "Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\"." + description: "Variable references $(VAR_NAME) are expanded\nusing the previously defined environment variables in the container and\nany service environment variables. If a variable cannot be resolved,\nthe reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.\n\"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\".\nEscaped references will never be expanded, regardless of whether the variable\nexists or not.\nDefaults to \"\"." type: "string" valueFrom: description: "Source for the environment variable's value. Cannot be used if value is not empty." @@ -2073,7 +2073,7 @@ spec: description: "The key to select." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -2083,7 +2083,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" fieldRef: - description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." + description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,\nspec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." properties: apiVersion: description: "Version of the schema the FieldPath is written in terms of, defaults to \"v1\"." @@ -2096,7 +2096,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" resourceFieldRef: - description: "Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." + description: "Selects a resource of the container: only resources limits and requests\n(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." properties: containerName: description: "Container name: required for volumes, optional for env vars" @@ -2122,7 +2122,7 @@ spec: description: "The key of the secret to select from. Must be a valid secret key." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -2137,7 +2137,7 @@ spec: type: "object" type: "array" envFrom: - description: "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated." + description: "List of sources to populate environment variables in the container.\nThe keys defined within a source must be a C_IDENTIFIER. All invalid keys\nwill be reported as an event when the container is starting. When a key exists in multiple\nsources, the value associated with the last source will take precedence.\nValues defined by an Env with a duplicate key will take precedence.\nCannot be updated." items: description: "EnvFromSource represents the source of a set of ConfigMaps" properties: @@ -2145,7 +2145,7 @@ spec: description: "The ConfigMap to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -2159,7 +2159,7 @@ spec: description: "The Secret to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -2169,22 +2169,22 @@ spec: type: "object" type: "array" image: - description: "Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets." + description: "Container image name.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets." type: "string" imagePullPolicy: - description: "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images" + description: "Image pull policy.\nOne of Always, Never, IfNotPresent.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/containers/images#updating-images" type: "string" lifecycle: - description: "Actions that the management system should take in response to container lifecycle events. Cannot be updated." + description: "Actions that the management system should take in response to container lifecycle events.\nCannot be updated." properties: postStart: - description: "PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PostStart is called immediately after a container is created. If the handler fails,\nthe container is terminated and restarted according to its restart policy.\nOther management of the container blocks until the hook completes.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -2193,7 +2193,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -2201,7 +2201,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -2218,10 +2218,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -2237,7 +2237,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -2246,20 +2246,20 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" type: "object" preStop: - description: "PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PreStop is called immediately before a container is terminated due to an\nAPI request or management event such as liveness/startup probe failure,\npreemption, resource contention, etc. The handler is not called if the\ncontainer crashes or exits. The Pod's termination grace period countdown begins before the\nPreStop hook is executed. Regardless of the outcome of the handler, the\ncontainer will eventually terminate within the Pod's termination grace\nperiod (unless delayed by finalizers). Other management of the container blocks until the hook completes\nor until the termination grace period is reached.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -2268,7 +2268,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -2276,7 +2276,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -2293,10 +2293,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -2312,7 +2312,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -2321,7 +2321,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" @@ -2329,19 +2329,19 @@ spec: type: "object" type: "object" livenessProbe: - description: "Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container liveness.\nContainer will be restarted if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -2352,7 +2352,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -2361,7 +2361,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -2369,7 +2369,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -2386,24 +2386,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -2416,45 +2416,45 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" name: - description: "Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated." + description: "Name of the container specified as a DNS_LABEL.\nEach container in a pod must have a unique name (DNS_LABEL).\nCannot be updated." type: "string" ports: - description: "List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default \"0.0.0.0\" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated." + description: "List of ports to expose from the container. Not specifying a port here\nDOES NOT prevent that port from being exposed. Any port which is\nlistening on the default \"0.0.0.0\" address inside a container will be\naccessible from the network.\nModifying this array with strategic merge patch may corrupt the data.\nFor more information See https://github.com/kubernetes/kubernetes/issues/108255.\nCannot be updated." items: description: "ContainerPort represents a network port in a single container." properties: containerPort: - description: "Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536." + description: "Number of port to expose on the pod's IP address.\nThis must be a valid port number, 0 < x < 65536." format: "int32" type: "integer" hostIP: description: "What host IP to bind the external port to." type: "string" hostPort: - description: "Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this." + description: "Number of port to expose on the host.\nIf specified, this must be a valid port number, 0 < x < 65536.\nIf HostNetwork is specified, this must match ContainerPort.\nMost containers do not need this." format: "int32" type: "integer" name: - description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services." + description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each\nnamed port in a pod must have a unique name. Name for the port that can be\nreferred to by services." type: "string" protocol: default: "TCP" - description: "Protocol for port. Must be UDP, TCP, or SCTP. Defaults to \"TCP\"." + description: "Protocol for port. Must be UDP, TCP, or SCTP.\nDefaults to \"TCP\"." type: "string" required: - "containerPort" @@ -2465,19 +2465,19 @@ spec: - "protocol" x-kubernetes-list-type: "map" readinessProbe: - description: "Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container service readiness.\nContainer will be removed from service endpoints if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -2488,7 +2488,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -2497,7 +2497,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -2505,7 +2505,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -2522,24 +2522,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -2552,17 +2552,17 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" @@ -2572,10 +2572,10 @@ spec: description: "ContainerResizePolicy represents resource resize policy for the container." properties: resourceName: - description: "Name of the resource to which this resource resize policy applies. Supported values: cpu, memory." + description: "Name of the resource to which this resource resize policy applies.\nSupported values: cpu, memory." type: "string" restartPolicy: - description: "Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired." + description: "Restart policy to apply when specified resource is resized.\nIf not specified, it defaults to NotRequired." type: "string" required: - "resourceName" @@ -2584,15 +2584,15 @@ spec: type: "array" x-kubernetes-list-type: "atomic" resources: - description: "Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Compute Resources required by this container.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -2608,7 +2608,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -2617,20 +2617,20 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" restartPolicy: - description: "RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is \"Always\". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as \"Always\" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy \"Always\" will be shut down. This lifecycle differs from normal init containers and is often referred to as a \"sidecar\" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed." + description: "RestartPolicy defines the restart behavior of individual containers in a pod.\nThis field may only be set for init containers, and the only allowed value is \"Always\".\nFor non-init containers or when this field is not specified,\nthe restart behavior is defined by the Pod's restart policy and the container type.\nSetting the RestartPolicy as \"Always\" for the init container will have the following effect:\nthis init container will be continually restarted on\nexit until all regular containers have terminated. Once all regular\ncontainers have completed, all init containers with restartPolicy \"Always\"\nwill be shut down. This lifecycle differs from normal init containers and\nis often referred to as a \"sidecar\" container. Although this init\ncontainer still starts in the init container sequence, it does not wait\nfor the container to complete before proceeding to the next init\ncontainer. Instead, the next init container starts immediately after this\ninit container is started, or after any startupProbe has successfully\ncompleted." type: "string" securityContext: - description: "SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" + description: "SecurityContext defines the security options the container should be run with.\nIf set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.\nMore info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -2646,27 +2646,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -2682,48 +2682,48 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" startupProbe: - description: "StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "StartupProbe indicates that the Pod has successfully initialized.\nIf specified, no other probes are executed until this completes successfully.\nIf this probe fails, the Pod will be restarted, just as if the livenessProbe failed.\nThis can be used to provide different probe parameters at the beginning of a Pod's lifecycle,\nwhen it might take a long time to load data or warm a cache, than during steady-state operation.\nThis cannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -2734,7 +2734,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -2743,7 +2743,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -2751,7 +2751,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -2768,24 +2768,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -2798,34 +2798,34 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" stdin: - description: "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false." + description: "Whether this container should allocate a buffer for stdin in the container runtime. If this\nis not set, reads from stdin in the container will always result in EOF.\nDefault is false." type: "boolean" stdinOnce: - description: "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false" + description: "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false" type: "boolean" terminationMessagePath: - description: "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated." + description: "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated." type: "string" terminationMessagePolicy: - description: "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated." + description: "Indicate how the termination message should be populated. File will use the contents of\nterminationMessagePath to populate the container status message on both success and failure.\nFallbackToLogsOnError will use the last chunk of container log output if the termination\nmessage file is empty and the container exited with an error.\nThe log output is limited to 2048 bytes or 80 lines, whichever is smaller.\nDefaults to File.\nCannot be updated." type: "string" tty: - description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false." + description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.\nDefault is false." type: "boolean" volumeDevices: description: "volumeDevices is the list of block devices to be used by the container." @@ -2844,27 +2844,27 @@ spec: type: "object" type: "array" volumeMounts: - description: "Pod volumes to mount into the container's filesystem. Cannot be updated." + description: "Pod volumes to mount into the container's filesystem.\nCannot be updated." items: description: "VolumeMount describes a mounting of a Volume within a container." properties: mountPath: - description: "Path within the container at which the volume should be mounted. Must not contain ':'." + description: "Path within the container at which the volume should be mounted. Must\nnot contain ':'." type: "string" mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" name: description: "This must match the Name of a Volume." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" required: - "mountPath" @@ -2872,7 +2872,7 @@ spec: type: "object" type: "array" workingDir: - description: "Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated." + description: "Container's working directory.\nIf not specified, the container runtime's default will be used, which\nmight be configured in the container image.\nCannot be updated." type: "string" required: - "name" @@ -2881,29 +2881,29 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" type: "object" rackConfig: - description: "RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration" + description: "RackConfig Configures the operator to deploy rack aware Aerospike cluster.\nPods will be deployed in given racks based on given configuration" properties: namespaces: description: "List of Aerospike namespaces for which rack feature will be enabled" @@ -2920,7 +2920,7 @@ spec: type: "object" x-kubernetes-preserve-unknown-fields: true effectiveAerospikeConfig: - description: "Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global Aerospike config" + description: "Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global\nAerospike config" type: "object" x-kubernetes-preserve-unknown-fields: true effectivePodSpec: @@ -2933,9 +2933,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -2943,16 +2943,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -2964,16 +2964,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -2994,26 +2994,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3025,16 +3025,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3055,7 +3055,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -3063,21 +3063,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3089,38 +3089,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3132,23 +3132,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -3157,26 +3157,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3188,38 +3188,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3231,17 +3231,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -3252,7 +3252,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -3260,21 +3260,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3286,38 +3286,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3329,23 +3329,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -3354,26 +3354,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3385,38 +3385,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3428,17 +3428,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -3454,23 +3454,23 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" @@ -3482,7 +3482,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -3504,7 +3504,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -3512,7 +3512,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -3527,7 +3527,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -3549,7 +3549,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -3557,7 +3557,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -3575,16 +3575,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -3594,7 +3594,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -3626,16 +3626,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -3647,7 +3647,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -3668,16 +3668,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -3695,11 +3695,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -3707,11 +3707,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -3719,7 +3719,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -3727,16 +3727,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -3744,7 +3744,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -3767,16 +3767,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3788,7 +3788,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -3811,14 +3811,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -3826,11 +3826,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -3841,12 +3841,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -3877,9 +3877,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -3887,16 +3887,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3908,16 +3908,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3938,26 +3938,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3969,16 +3969,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -3999,7 +3999,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -4007,21 +4007,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4033,38 +4033,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4076,23 +4076,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -4101,26 +4101,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4132,38 +4132,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4175,17 +4175,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -4196,7 +4196,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -4204,21 +4204,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4230,38 +4230,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4273,23 +4273,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -4298,26 +4298,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4329,38 +4329,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4372,17 +4372,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -4398,29 +4398,29 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" type: "object" rackLabel: - description: "RackLabel for setting rack affinity. Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: }" + description: "RackLabel for setting rack affinity.\nRack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: }" type: "string" region: description: "Region name for setting rack affinity. Rack pods will be deployed to given Region" @@ -4432,7 +4432,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -4454,7 +4454,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -4462,7 +4462,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -4477,7 +4477,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -4499,7 +4499,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -4507,7 +4507,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -4525,16 +4525,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -4544,7 +4544,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -4576,16 +4576,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -4597,7 +4597,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -4618,16 +4618,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -4645,11 +4645,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -4657,11 +4657,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -4669,7 +4669,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -4677,16 +4677,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -4694,7 +4694,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -4717,16 +4717,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -4738,7 +4738,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -4761,14 +4761,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -4776,11 +4776,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -4791,12 +4791,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -4832,17 +4832,17 @@ spec: type: "string" type: "array" seedsFinderServices: - description: "SeedsFinderServices creates additional Kubernetes service that allow clients to discover Aerospike cluster nodes." + description: "SeedsFinderServices creates additional Kubernetes service that allow\nclients to discover Aerospike cluster nodes." properties: loadBalancer: - description: "LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster." + description: "LoadBalancer created to discover Aerospike Cluster nodes from outside of\nKubernetes cluster." properties: annotations: additionalProperties: type: "string" type: "object" externalTrafficPolicy: - description: "ServiceExternalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's \"externally-facing\" addresses (NodePorts, ExternalIPs, and LoadBalancer IPs." + description: "ServiceExternalTrafficPolicy describes how nodes distribute service traffic they\nreceive on one of the Service's \"externally-facing\" addresses (NodePorts, ExternalIPs,\nand LoadBalancer IPs." enum: - "Local" - "Cluster" @@ -4858,7 +4858,7 @@ spec: minimum: 1024.0 type: "integer" targetPort: - description: "TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. If there is no tls port configured then regular port from network.service is used." + description: "TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config.\nIf there is no tls port configured then regular port from network.service is used." format: "int32" maximum: 65535.0 minimum: 1024.0 @@ -4876,7 +4876,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -4898,7 +4898,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -4906,7 +4906,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -4921,7 +4921,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -4943,7 +4943,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -4951,7 +4951,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -4969,16 +4969,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -4988,7 +4988,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -5020,16 +5020,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -5041,7 +5041,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -5062,16 +5062,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -5089,11 +5089,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -5101,11 +5101,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -5113,7 +5113,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -5121,16 +5121,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -5138,7 +5138,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -5161,16 +5161,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -5182,7 +5182,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -5205,14 +5205,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -5220,11 +5220,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -5235,12 +5235,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -5259,10 +5259,10 @@ spec: description: "ValidationPolicy controls validation of the Aerospike cluster resource." properties: skipWorkDirValidate: - description: "skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. Defaults to false." + description: "skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage.\nDefaults to false." type: "boolean" skipXdrDlogFileValidate: - description: "ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. Defaults to false." + description: "ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage.\nDefaults to false." type: "boolean" required: - "skipWorkDirValidate" @@ -5278,7 +5278,7 @@ spec: nullable: true properties: aerospikeAccessControl: - description: "AerospikeAccessControl has the Aerospike roles and users definitions. Required if aerospike cluster security is enabled." + description: "AerospikeAccessControl has the Aerospike roles and users definitions.\nRequired if aerospike cluster security is enabled." properties: adminPolicy: description: "AerospikeClientAdminPolicy specify the aerospike client admin policy for access control operations." @@ -5340,7 +5340,7 @@ spec: type: "array" x-kubernetes-list-type: "set" secretName: - description: "SecretName has secret info created by user. User needs to create this secret from password literal. eg: kubectl create secret generic dev-db-secret --from-literal=password='password'" + description: "SecretName has secret info created by user. User needs to create this secret from password literal.\neg: kubectl create secret generic dev-db-secret --from-literal=password='password'" type: "string" required: - "name" @@ -5363,7 +5363,7 @@ spec: description: "AerospikeNetworkPolicy specifies how clients and tools access the Aerospike cluster." properties: access: - description: "AccessType is the type of network address to use for Aerospike access address. Defaults to hostInternal." + description: "AccessType is the type of network address to use for Aerospike access address.\nDefaults to hostInternal." enum: - "pod" - "hostInternal" @@ -5372,7 +5372,7 @@ spec: - "customInterface" type: "string" alternateAccess: - description: "AlternateAccessType is the type of network address to use for Aerospike alternate access address. Defaults to hostExternal." + description: "AlternateAccessType is the type of network address to use for Aerospike alternate access address.\nDefaults to hostExternal." enum: - "pod" - "hostInternal" @@ -5381,48 +5381,48 @@ spec: - "customInterface" type: "string" customAccessNetworkNames: - description: "CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' access type." + description: "CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' access type." items: type: "string" minItems: 1 type: "array" customAlternateAccessNetworkNames: - description: "CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' alternateAccess type" + description: "CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike\nalternate access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' alternateAccess type" items: type: "string" minItems: 1 type: "array" customFabricNetworkNames: - description: "CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' fabric type" + description: "CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' fabric type" items: type: "string" minItems: 1 type: "array" customTLSAccessNetworkNames: - description: "CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAccess type" + description: "CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' tlsAccess type" items: type: "string" minItems: 1 type: "array" customTLSAlternateAccessNetworkNames: - description: "CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAlternateAccess type" + description: "CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS\nalternate access address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign\nnetwork interfaces to the pod.\nRequired with 'customInterface' tlsAlternateAccess type" items: type: "string" minItems: 1 type: "array" customTLSFabricNetworkNames: - description: "CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsFabric type" + description: "CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address.\nEach element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition,\nseparated by a forward slash (/).\nThese elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network\ninterfaces to the pod.\nRequired with 'customInterface' tlsFabric type" items: type: "string" minItems: 1 type: "array" fabric: - description: "FabricType is the type of network address to use for Aerospike fabric address. Defaults is empty meaning all interfaces 'any'." + description: "FabricType is the type of network address to use for Aerospike fabric address.\nDefaults is empty meaning all interfaces 'any'." enum: - "customInterface" type: "string" tlsAccess: - description: "TLSAccessType is the type of network address to use for Aerospike TLS access address. Defaults to hostInternal." + description: "TLSAccessType is the type of network address to use for Aerospike TLS access address.\nDefaults to hostInternal." enum: - "pod" - "hostInternal" @@ -5431,7 +5431,7 @@ spec: - "customInterface" type: "string" tlsAlternateAccess: - description: "TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. Defaults to hostExternal." + description: "TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address.\nDefaults to hostExternal." enum: - "pod" - "hostInternal" @@ -5440,7 +5440,7 @@ spec: - "customInterface" type: "string" tlsFabric: - description: "TLSFabricType is the type of network address to use for Aerospike TLS fabric address. Defaults is empty meaning all interfaces 'any'." + description: "TLSFabricType is the type of network address to use for Aerospike TLS fabric address.\nDefaults is empty meaning all interfaces 'any'." enum: - "customInterface" type: "string" @@ -5449,13 +5449,13 @@ spec: description: "Aerospike server image" type: "string" multiPodPerHost: - description: "If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod. NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. \n If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user. Deprecated: MultiPodPerHost is now part of podSpec" + description: "If set true then multiple pods can be created per Kubernetes Node.\nThis will create a NodePort service for each Pod.\nNodePort, as the name implies, opens a specific port on all the Kubernetes Nodes ,\nand any traffic that is sent to this port is forwarded to the service.\nHere service picks a random port in range (30000-32767), so these port should be open.\n\n\nIf set false then only single pod can be created per Kubernetes Node.\nThis will create Pods using hostPort setting.\nThe container port will be exposed to the external network at :,\nwhere the hostIP is the IP address of the Kubernetes Node where the container is running and\nthe hostPort is the port requested by the user.\nDeprecated: MultiPodPerHost is now part of podSpec" type: "boolean" operatorClientCertSpec: description: "Certificates to connect to Aerospike. If omitted then certs are taken from the secret 'aerospike-secret'." properties: certPathInOperator: - description: "AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem." + description: "AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike\ncluster.\nAll paths are on operator's filesystem." properties: caCertsPath: type: "string" @@ -5496,18 +5496,18 @@ spec: description: "Additional configuration for create Aerospike pods." properties: aerospikeContainer: - description: "AerospikeContainerSpec configures the aerospike-server container created by the operator." + description: "AerospikeContainerSpec configures the aerospike-server container\ncreated by the operator." properties: resources: - description: "Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests." + description: "Define resources requests and limits for Aerospike Server Container.\nPlease contact aerospike for proper sizing exercise\nOnly Memory and Cpu resources can be given\nResources.Limits should be more than Resources.Requests." properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -5523,7 +5523,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -5532,17 +5532,17 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" securityContext: description: "SecurityContext that will be added to aerospike-server container created by operator." properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -5558,27 +5558,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -5594,51 +5594,51 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" type: "object" aerospikeInitContainer: - description: "AerospikeInitContainerSpec configures the aerospike-init container created by the operator." + description: "AerospikeInitContainerSpec configures the aerospike-init container\ncreated by the operator." properties: imageRegistry: - description: "ImageRegistry is the name of image registry for aerospike-init container image ImageRegistry, e.g. docker.io, redhat.access.com" + description: "ImageRegistry is the name of image registry for aerospike-init container image\nImageRegistry, e.g. docker.io, redhat.access.com" type: "string" resources: - description: "Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests." + description: "Define resources requests and limits for Aerospike init Container.\nOnly Memory and Cpu resources can be given\nResources.Limits should be more than Resources.Requests." properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -5654,7 +5654,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -5663,17 +5663,17 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" securityContext: description: "SecurityContext that will be added to aerospike-init container created by operator." properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -5689,27 +5689,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -5725,31 +5725,31 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" @@ -5761,9 +5761,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -5771,16 +5771,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -5792,16 +5792,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -5822,26 +5822,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -5853,16 +5853,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -5883,7 +5883,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -5891,21 +5891,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -5917,38 +5917,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -5960,23 +5960,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -5985,26 +5985,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6016,38 +6016,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6059,17 +6059,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -6080,7 +6080,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -6088,21 +6088,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6114,38 +6114,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6157,23 +6157,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -6182,26 +6182,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6213,38 +6213,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -6256,17 +6256,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -6275,15 +6275,15 @@ spec: type: "object" type: "object" dnsConfig: - description: "DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None`" + description: "DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy.\nThis is required field when dnsPolicy is set to `None`" properties: nameservers: - description: "A list of DNS name server IP addresses. This will be appended to the base nameservers generated from DNSPolicy. Duplicated nameservers will be removed." + description: "A list of DNS name server IP addresses.\nThis will be appended to the base nameservers generated from DNSPolicy.\nDuplicated nameservers will be removed." items: type: "string" type: "array" options: - description: "A list of DNS resolver options. This will be merged with the base options generated from DNSPolicy. Duplicated entries will be removed. Resolution options given in Options will override those that appear in the base DNSPolicy." + description: "A list of DNS resolver options.\nThis will be merged with the base options generated from DNSPolicy.\nDuplicated entries will be removed. Resolution options given in Options\nwill override those that appear in the base DNSPolicy." items: description: "PodDNSConfigOption defines DNS resolver options of a pod." properties: @@ -6295,27 +6295,27 @@ spec: type: "object" type: "array" searches: - description: "A list of DNS search domains for host-name lookup. This will be appended to the base search paths generated from DNSPolicy. Duplicated search paths will be removed." + description: "A list of DNS search domains for host-name lookup.\nThis will be appended to the base search paths generated from DNSPolicy.\nDuplicated search paths will be removed." items: type: "string" type: "array" type: "object" dnsPolicy: - description: "DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet" + description: "DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy.\nIf hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet" type: "string" effectiveDNSPolicy: description: "Effective value of the DNSPolicy" type: "string" hostNetwork: - description: "HostNetwork enables host networking for the pod. To enable hostNetwork multiPodPerHost must be false." + description: "HostNetwork enables host networking for the pod.\nTo enable hostNetwork multiPodPerHost must be false." type: "boolean" imagePullSecrets: - description: "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod" + description: "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of\nthe images used by this PodSpec.\nMore info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod" items: - description: "LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace." + description: "LocalObjectReference contains enough information to let you locate the\nreferenced object inside the same namespace." properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -6326,17 +6326,17 @@ spec: description: "A single application container that you want to run within a pod." properties: args: - description: "Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Arguments to the entrypoint.\nThe container image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" command: - description: "Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Entrypoint array. Not executed within a shell.\nThe container image's ENTRYPOINT is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" env: - description: "List of environment variables to set in the container. Cannot be updated." + description: "List of environment variables to set in the container.\nCannot be updated." items: description: "EnvVar represents an environment variable present in a Container." properties: @@ -6344,7 +6344,7 @@ spec: description: "Name of the environment variable. Must be a C_IDENTIFIER." type: "string" value: - description: "Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\"." + description: "Variable references $(VAR_NAME) are expanded\nusing the previously defined environment variables in the container and\nany service environment variables. If a variable cannot be resolved,\nthe reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.\n\"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\".\nEscaped references will never be expanded, regardless of whether the variable\nexists or not.\nDefaults to \"\"." type: "string" valueFrom: description: "Source for the environment variable's value. Cannot be used if value is not empty." @@ -6356,7 +6356,7 @@ spec: description: "The key to select." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -6366,7 +6366,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" fieldRef: - description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." + description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,\nspec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." properties: apiVersion: description: "Version of the schema the FieldPath is written in terms of, defaults to \"v1\"." @@ -6379,7 +6379,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" resourceFieldRef: - description: "Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." + description: "Selects a resource of the container: only resources limits and requests\n(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." properties: containerName: description: "Container name: required for volumes, optional for env vars" @@ -6405,7 +6405,7 @@ spec: description: "The key of the secret to select from. Must be a valid secret key." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -6420,7 +6420,7 @@ spec: type: "object" type: "array" envFrom: - description: "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated." + description: "List of sources to populate environment variables in the container.\nThe keys defined within a source must be a C_IDENTIFIER. All invalid keys\nwill be reported as an event when the container is starting. When a key exists in multiple\nsources, the value associated with the last source will take precedence.\nValues defined by an Env with a duplicate key will take precedence.\nCannot be updated." items: description: "EnvFromSource represents the source of a set of ConfigMaps" properties: @@ -6428,7 +6428,7 @@ spec: description: "The ConfigMap to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -6442,7 +6442,7 @@ spec: description: "The Secret to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -6452,22 +6452,22 @@ spec: type: "object" type: "array" image: - description: "Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets." + description: "Container image name.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets." type: "string" imagePullPolicy: - description: "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images" + description: "Image pull policy.\nOne of Always, Never, IfNotPresent.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/containers/images#updating-images" type: "string" lifecycle: - description: "Actions that the management system should take in response to container lifecycle events. Cannot be updated." + description: "Actions that the management system should take in response to container lifecycle events.\nCannot be updated." properties: postStart: - description: "PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PostStart is called immediately after a container is created. If the handler fails,\nthe container is terminated and restarted according to its restart policy.\nOther management of the container blocks until the hook completes.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -6476,7 +6476,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -6484,7 +6484,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -6501,10 +6501,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -6520,7 +6520,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -6529,20 +6529,20 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" type: "object" preStop: - description: "PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PreStop is called immediately before a container is terminated due to an\nAPI request or management event such as liveness/startup probe failure,\npreemption, resource contention, etc. The handler is not called if the\ncontainer crashes or exits. The Pod's termination grace period countdown begins before the\nPreStop hook is executed. Regardless of the outcome of the handler, the\ncontainer will eventually terminate within the Pod's termination grace\nperiod (unless delayed by finalizers). Other management of the container blocks until the hook completes\nor until the termination grace period is reached.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -6551,7 +6551,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -6559,7 +6559,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -6576,10 +6576,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -6595,7 +6595,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -6604,7 +6604,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" @@ -6612,19 +6612,19 @@ spec: type: "object" type: "object" livenessProbe: - description: "Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container liveness.\nContainer will be restarted if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -6635,7 +6635,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -6644,7 +6644,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -6652,7 +6652,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -6669,24 +6669,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -6699,45 +6699,45 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" name: - description: "Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated." + description: "Name of the container specified as a DNS_LABEL.\nEach container in a pod must have a unique name (DNS_LABEL).\nCannot be updated." type: "string" ports: - description: "List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default \"0.0.0.0\" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated." + description: "List of ports to expose from the container. Not specifying a port here\nDOES NOT prevent that port from being exposed. Any port which is\nlistening on the default \"0.0.0.0\" address inside a container will be\naccessible from the network.\nModifying this array with strategic merge patch may corrupt the data.\nFor more information See https://github.com/kubernetes/kubernetes/issues/108255.\nCannot be updated." items: description: "ContainerPort represents a network port in a single container." properties: containerPort: - description: "Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536." + description: "Number of port to expose on the pod's IP address.\nThis must be a valid port number, 0 < x < 65536." format: "int32" type: "integer" hostIP: description: "What host IP to bind the external port to." type: "string" hostPort: - description: "Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this." + description: "Number of port to expose on the host.\nIf specified, this must be a valid port number, 0 < x < 65536.\nIf HostNetwork is specified, this must match ContainerPort.\nMost containers do not need this." format: "int32" type: "integer" name: - description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services." + description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each\nnamed port in a pod must have a unique name. Name for the port that can be\nreferred to by services." type: "string" protocol: default: "TCP" - description: "Protocol for port. Must be UDP, TCP, or SCTP. Defaults to \"TCP\"." + description: "Protocol for port. Must be UDP, TCP, or SCTP.\nDefaults to \"TCP\"." type: "string" required: - "containerPort" @@ -6748,19 +6748,19 @@ spec: - "protocol" x-kubernetes-list-type: "map" readinessProbe: - description: "Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container service readiness.\nContainer will be removed from service endpoints if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -6771,7 +6771,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -6780,7 +6780,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -6788,7 +6788,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -6805,24 +6805,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -6835,17 +6835,17 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" @@ -6855,10 +6855,10 @@ spec: description: "ContainerResizePolicy represents resource resize policy for the container." properties: resourceName: - description: "Name of the resource to which this resource resize policy applies. Supported values: cpu, memory." + description: "Name of the resource to which this resource resize policy applies.\nSupported values: cpu, memory." type: "string" restartPolicy: - description: "Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired." + description: "Restart policy to apply when specified resource is resized.\nIf not specified, it defaults to NotRequired." type: "string" required: - "resourceName" @@ -6867,15 +6867,15 @@ spec: type: "array" x-kubernetes-list-type: "atomic" resources: - description: "Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Compute Resources required by this container.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -6891,7 +6891,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -6900,20 +6900,20 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" restartPolicy: - description: "RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is \"Always\". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as \"Always\" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy \"Always\" will be shut down. This lifecycle differs from normal init containers and is often referred to as a \"sidecar\" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed." + description: "RestartPolicy defines the restart behavior of individual containers in a pod.\nThis field may only be set for init containers, and the only allowed value is \"Always\".\nFor non-init containers or when this field is not specified,\nthe restart behavior is defined by the Pod's restart policy and the container type.\nSetting the RestartPolicy as \"Always\" for the init container will have the following effect:\nthis init container will be continually restarted on\nexit until all regular containers have terminated. Once all regular\ncontainers have completed, all init containers with restartPolicy \"Always\"\nwill be shut down. This lifecycle differs from normal init containers and\nis often referred to as a \"sidecar\" container. Although this init\ncontainer still starts in the init container sequence, it does not wait\nfor the container to complete before proceeding to the next init\ncontainer. Instead, the next init container starts immediately after this\ninit container is started, or after any startupProbe has successfully\ncompleted." type: "string" securityContext: - description: "SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" + description: "SecurityContext defines the security options the container should be run with.\nIf set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.\nMore info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -6929,27 +6929,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -6965,48 +6965,48 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" startupProbe: - description: "StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "StartupProbe indicates that the Pod has successfully initialized.\nIf specified, no other probes are executed until this completes successfully.\nIf this probe fails, the Pod will be restarted, just as if the livenessProbe failed.\nThis can be used to provide different probe parameters at the beginning of a Pod's lifecycle,\nwhen it might take a long time to load data or warm a cache, than during steady-state operation.\nThis cannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -7017,7 +7017,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -7026,7 +7026,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7034,7 +7034,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -7051,24 +7051,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -7081,34 +7081,34 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" stdin: - description: "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false." + description: "Whether this container should allocate a buffer for stdin in the container runtime. If this\nis not set, reads from stdin in the container will always result in EOF.\nDefault is false." type: "boolean" stdinOnce: - description: "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false" + description: "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false" type: "boolean" terminationMessagePath: - description: "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated." + description: "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated." type: "string" terminationMessagePolicy: - description: "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated." + description: "Indicate how the termination message should be populated. File will use the contents of\nterminationMessagePath to populate the container status message on both success and failure.\nFallbackToLogsOnError will use the last chunk of container log output if the termination\nmessage file is empty and the container exited with an error.\nThe log output is limited to 2048 bytes or 80 lines, whichever is smaller.\nDefaults to File.\nCannot be updated." type: "string" tty: - description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false." + description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.\nDefault is false." type: "boolean" volumeDevices: description: "volumeDevices is the list of block devices to be used by the container." @@ -7127,27 +7127,27 @@ spec: type: "object" type: "array" volumeMounts: - description: "Pod volumes to mount into the container's filesystem. Cannot be updated." + description: "Pod volumes to mount into the container's filesystem.\nCannot be updated." items: description: "VolumeMount describes a mounting of a Volume within a container." properties: mountPath: - description: "Path within the container at which the volume should be mounted. Must not contain ':'." + description: "Path within the container at which the volume should be mounted. Must\nnot contain ':'." type: "string" mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" name: description: "This must match the Name of a Volume." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" required: - "mountPath" @@ -7155,7 +7155,7 @@ spec: type: "object" type: "array" workingDir: - description: "Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated." + description: "Container's working directory.\nIf not specified, the container runtime's default will be used, which\nmight be configured in the container image.\nCannot be updated." type: "string" required: - "name" @@ -7176,7 +7176,7 @@ spec: type: "object" type: "object" multiPodPerHost: - description: "If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod. NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. \n If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user." + description: "If set true then multiple pods can be created per Kubernetes Node.\nThis will create a NodePort service for each Pod.\nNodePort, as the name implies, opens a specific port on all the Kubernetes Nodes ,\nand any traffic that is sent to this port is forwarded to the service.\nHere service picks a random port in range (30000-32767), so these port should be open.\n\n\nIf set false then only single pod can be created per Kubernetes Node.\nThis will create Pods using hostPort setting.\nThe container port will be exposed to the external network at :,\nwhere the hostIP is the IP address of the Kubernetes Node where the container is running and\nthe hostPort is the port requested by the user." type: "boolean" nodeSelector: additionalProperties: @@ -7184,28 +7184,28 @@ spec: description: "NodeSelector constraints for this pod." type: "object" securityContext: - description: "SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field." + description: "SecurityContext holds pod-level security attributes and common container settings.\nOptional: Defaults to empty. See type description for default values of each field." properties: fsGroup: - description: "A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: \n 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- \n If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows." + description: "A special supplemental group that applies to all containers in a pod.\nSome volume types allow the Kubelet to change the ownership of that volume\nto be owned by the pod:\n\n\n1. The owning GID will be the FSGroup\n2. The setgid bit is set (new files created in the volume will be owned by FSGroup)\n3. The permission bits are OR'd with rw-rw----\n\n\nIf unset, the Kubelet will not modify the ownership and permissions of any volume.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" fsGroupChangePolicy: - description: "fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are \"OnRootMismatch\" and \"Always\". If not specified, \"Always\" is used. Note that this field cannot be set when spec.os.name is windows." + description: "fsGroupChangePolicy defines behavior of changing ownership and permission of the volume\nbefore being exposed inside Pod. This field will only apply to\nvolume types which support fsGroup based ownership(and permissions).\nIt will have no effect on ephemeral volume types such as: secret, configmaps\nand emptydir.\nValid values are \"OnRootMismatch\" and \"Always\". If not specified, \"Always\" is used.\nNote that this field cannot be set when spec.os.name is windows." type: "string" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence\nfor that container.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence\nfor that container.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to all containers.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in SecurityContext. If set in\nboth SecurityContext and PodSecurityContext, the value specified in SecurityContext\ntakes precedence for that container.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -7221,25 +7221,25 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by the containers in this pod.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" supplementalGroups: - description: "A list of groups applied to the first process run in each container, in addition to the container's primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows." + description: "A list of groups applied to the first process run in each container, in addition\nto the container's primary GID, the fsGroup (if specified), and group memberships\ndefined in the container image for the uid of the container process. If unspecified,\nno additional groups are added to any container. Note that group memberships\ndefined in the container image for the uid of the container process are still effective,\neven if they are not included in this list.\nNote that this field cannot be set when spec.os.name is windows." items: format: "int64" type: "integer" type: "array" sysctls: - description: "Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows." + description: "Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported\nsysctls (by the container runtime) might fail to launch.\nNote that this field cannot be set when spec.os.name is windows." items: description: "Sysctl defines a kernel parameter to be set" properties: @@ -7255,19 +7255,19 @@ spec: type: "object" type: "array" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options within a container's SecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" @@ -7277,17 +7277,17 @@ spec: description: "A single application container that you want to run within a pod." properties: args: - description: "Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Arguments to the entrypoint.\nThe container image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" command: - description: "Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" + description: "Entrypoint array. Not executed within a shell.\nThe container image's ENTRYPOINT is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" items: type: "string" type: "array" env: - description: "List of environment variables to set in the container. Cannot be updated." + description: "List of environment variables to set in the container.\nCannot be updated." items: description: "EnvVar represents an environment variable present in a Container." properties: @@ -7295,7 +7295,7 @@ spec: description: "Name of the environment variable. Must be a C_IDENTIFIER." type: "string" value: - description: "Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\"." + description: "Variable references $(VAR_NAME) are expanded\nusing the previously defined environment variables in the container and\nany service environment variables. If a variable cannot be resolved,\nthe reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.\n\"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\".\nEscaped references will never be expanded, regardless of whether the variable\nexists or not.\nDefaults to \"\"." type: "string" valueFrom: description: "Source for the environment variable's value. Cannot be used if value is not empty." @@ -7307,7 +7307,7 @@ spec: description: "The key to select." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -7317,7 +7317,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" fieldRef: - description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." + description: "Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`,\nspec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs." properties: apiVersion: description: "Version of the schema the FieldPath is written in terms of, defaults to \"v1\"." @@ -7330,7 +7330,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" resourceFieldRef: - description: "Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." + description: "Selects a resource of the container: only resources limits and requests\n(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported." properties: containerName: description: "Container name: required for volumes, optional for env vars" @@ -7356,7 +7356,7 @@ spec: description: "The key of the secret to select from. Must be a valid secret key." type: "string" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -7371,7 +7371,7 @@ spec: type: "object" type: "array" envFrom: - description: "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated." + description: "List of sources to populate environment variables in the container.\nThe keys defined within a source must be a C_IDENTIFIER. All invalid keys\nwill be reported as an event when the container is starting. When a key exists in multiple\nsources, the value associated with the last source will take precedence.\nValues defined by an Env with a duplicate key will take precedence.\nCannot be updated." items: description: "EnvFromSource represents the source of a set of ConfigMaps" properties: @@ -7379,7 +7379,7 @@ spec: description: "The ConfigMap to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -7393,7 +7393,7 @@ spec: description: "The Secret to select from" properties: name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -7403,22 +7403,22 @@ spec: type: "object" type: "array" image: - description: "Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets." + description: "Container image name.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets." type: "string" imagePullPolicy: - description: "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images" + description: "Image pull policy.\nOne of Always, Never, IfNotPresent.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/containers/images#updating-images" type: "string" lifecycle: - description: "Actions that the management system should take in response to container lifecycle events. Cannot be updated." + description: "Actions that the management system should take in response to container lifecycle events.\nCannot be updated." properties: postStart: - description: "PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PostStart is called immediately after a container is created. If the handler fails,\nthe container is terminated and restarted according to its restart policy.\nOther management of the container blocks until the hook completes.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -7427,7 +7427,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7435,7 +7435,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -7452,10 +7452,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -7471,7 +7471,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -7480,20 +7480,20 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" type: "object" preStop: - description: "PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" + description: "PreStop is called immediately before a container is terminated due to an\nAPI request or management event such as liveness/startup probe failure,\npreemption, resource contention, etc. The handler is not called if the\ncontainer crashes or exits. The Pod's termination grace period countdown begins before the\nPreStop hook is executed. Regardless of the outcome of the handler, the\ncontainer will eventually terminate within the Pod's termination grace\nperiod (unless delayed by finalizers). Other management of the container blocks until the hook completes\nor until the termination grace period is reached.\nMore info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" @@ -7502,7 +7502,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7510,7 +7510,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -7527,10 +7527,10 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" @@ -7546,7 +7546,7 @@ spec: - "seconds" type: "object" tcpSocket: - description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified." + description: "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept\nfor the backward compatibility. There are no validation of this field and\nlifecycle hooks will fail in runtime when tcp handler is specified." properties: host: description: "Optional: Host name to connect to, defaults to the pod IP." @@ -7555,7 +7555,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" @@ -7563,19 +7563,19 @@ spec: type: "object" type: "object" livenessProbe: - description: "Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container liveness.\nContainer will be restarted if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -7586,7 +7586,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -7595,7 +7595,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7603,7 +7603,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -7620,24 +7620,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -7650,45 +7650,45 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" name: - description: "Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated." + description: "Name of the container specified as a DNS_LABEL.\nEach container in a pod must have a unique name (DNS_LABEL).\nCannot be updated." type: "string" ports: - description: "List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default \"0.0.0.0\" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated." + description: "List of ports to expose from the container. Not specifying a port here\nDOES NOT prevent that port from being exposed. Any port which is\nlistening on the default \"0.0.0.0\" address inside a container will be\naccessible from the network.\nModifying this array with strategic merge patch may corrupt the data.\nFor more information See https://github.com/kubernetes/kubernetes/issues/108255.\nCannot be updated." items: description: "ContainerPort represents a network port in a single container." properties: containerPort: - description: "Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536." + description: "Number of port to expose on the pod's IP address.\nThis must be a valid port number, 0 < x < 65536." format: "int32" type: "integer" hostIP: description: "What host IP to bind the external port to." type: "string" hostPort: - description: "Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this." + description: "Number of port to expose on the host.\nIf specified, this must be a valid port number, 0 < x < 65536.\nIf HostNetwork is specified, this must match ContainerPort.\nMost containers do not need this." format: "int32" type: "integer" name: - description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services." + description: "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each\nnamed port in a pod must have a unique name. Name for the port that can be\nreferred to by services." type: "string" protocol: default: "TCP" - description: "Protocol for port. Must be UDP, TCP, or SCTP. Defaults to \"TCP\"." + description: "Protocol for port. Must be UDP, TCP, or SCTP.\nDefaults to \"TCP\"." type: "string" required: - "containerPort" @@ -7699,19 +7699,19 @@ spec: - "protocol" x-kubernetes-list-type: "map" readinessProbe: - description: "Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Periodic probe of container service readiness.\nContainer will be removed from service endpoints if the probe fails.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -7722,7 +7722,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -7731,7 +7731,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7739,7 +7739,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -7756,24 +7756,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -7786,17 +7786,17 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" @@ -7806,10 +7806,10 @@ spec: description: "ContainerResizePolicy represents resource resize policy for the container." properties: resourceName: - description: "Name of the resource to which this resource resize policy applies. Supported values: cpu, memory." + description: "Name of the resource to which this resource resize policy applies.\nSupported values: cpu, memory." type: "string" restartPolicy: - description: "Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired." + description: "Restart policy to apply when specified resource is resized.\nIf not specified, it defaults to NotRequired." type: "string" required: - "resourceName" @@ -7818,15 +7818,15 @@ spec: type: "array" x-kubernetes-list-type: "atomic" resources: - description: "Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Compute Resources required by this container.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -7842,7 +7842,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -7851,20 +7851,20 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" restartPolicy: - description: "RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is \"Always\". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as \"Always\" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy \"Always\" will be shut down. This lifecycle differs from normal init containers and is often referred to as a \"sidecar\" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed." + description: "RestartPolicy defines the restart behavior of individual containers in a pod.\nThis field may only be set for init containers, and the only allowed value is \"Always\".\nFor non-init containers or when this field is not specified,\nthe restart behavior is defined by the Pod's restart policy and the container type.\nSetting the RestartPolicy as \"Always\" for the init container will have the following effect:\nthis init container will be continually restarted on\nexit until all regular containers have terminated. Once all regular\ncontainers have completed, all init containers with restartPolicy \"Always\"\nwill be shut down. This lifecycle differs from normal init containers and\nis often referred to as a \"sidecar\" container. Although this init\ncontainer still starts in the init container sequence, it does not wait\nfor the container to complete before proceeding to the next init\ncontainer. Instead, the next init container starts immediately after this\ninit container is started, or after any startupProbe has successfully\ncompleted." type: "string" securityContext: - description: "SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" + description: "SecurityContext defines the security options the container should be run with.\nIf set, the fields of SecurityContext override the equivalent fields of PodSecurityContext.\nMore info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" properties: allowPrivilegeEscalation: - description: "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows." + description: "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" capabilities: - description: "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows." + description: "The capabilities to add/drop when running containers.\nDefaults to the default set of capabilities granted by the container runtime.\nNote that this field cannot be set when spec.os.name is windows." properties: add: description: "Added capabilities" @@ -7880,27 +7880,27 @@ spec: type: "array" type: "object" privileged: - description: "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows." + description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: - description: "Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows." + description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" runAsGroup: - description: "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" runAsNonRoot: - description: "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "boolean" runAsUser: - description: "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" seLinuxOptions: - description: "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows." + description: "The SELinux context to be applied to the container.\nIf unspecified, the container runtime will allocate a random SELinux context for each\ncontainer. May also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows." properties: level: description: "Level is SELinux level label that applies to the container." @@ -7916,48 +7916,48 @@ spec: type: "string" type: "object" seccompProfile: - description: "The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows." + description: "The seccomp options to use by this container. If seccomp options are\nprovided at both the pod & container level, the container options\noverride the pod options.\nNote that this field cannot be set when spec.os.name is windows." properties: localhostProfile: - description: "localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is \"Localhost\". Must NOT be set for any other type." + description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" windowsOptions: - description: "The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux." + description: "The Windows specific settings applied to all containers.\nIf unspecified, the options from the PodSecurityContext will be used.\nIf set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is linux." properties: gmsaCredentialSpec: - description: "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field." + description: "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field." type: "string" gmsaCredentialSpecName: description: "GMSACredentialSpecName is the name of the GMSA credential spec to use." type: "string" hostProcess: - description: "HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true." + description: "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true." type: "boolean" runAsUserName: - description: "The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence." + description: "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence." type: "string" type: "object" type: "object" startupProbe: - description: "StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "StartupProbe indicates that the Pod has successfully initialized.\nIf specified, no other probes are executed until this completes successfully.\nIf this probe fails, the Pod will be restarted, just as if the livenessProbe failed.\nThis can be used to provide different probe parameters at the beginning of a Pod's lifecycle,\nwhen it might take a long time to load data or warm a cache, than during steady-state operation.\nThis cannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" properties: exec: description: "Exec specifies the action to take." properties: command: - description: "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy." + description: "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy." items: type: "string" type: "array" type: "object" failureThreshold: - description: "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1." + description: "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1." format: "int32" type: "integer" grpc: @@ -7968,7 +7968,7 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). \n If this is not specified, the default behavior is defined by gRPC." + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -7977,7 +7977,7 @@ spec: description: "HTTPGet specifies the http request to perform." properties: host: - description: "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead." + description: "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead." type: "string" httpHeaders: description: "Custom headers to set in the request. HTTP allows repeated headers." @@ -7985,7 +7985,7 @@ spec: description: "HTTPHeader describes a custom header to be used in HTTP probes" properties: name: - description: "The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header." + description: "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." type: "string" value: description: "The header field value" @@ -8002,24 +8002,24 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Name or number of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true scheme: - description: "Scheme to use for connecting to the host. Defaults to HTTP." + description: "Scheme to use for connecting to the host.\nDefaults to HTTP." type: "string" required: - "port" type: "object" initialDelaySeconds: - description: "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" periodSeconds: - description: "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1." + description: "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1." format: "int32" type: "integer" successThreshold: - description: "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1." + description: "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1." format: "int32" type: "integer" tcpSocket: @@ -8032,34 +8032,34 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + description: "Number or name of the port to access on the container.\nNumber must be in the range 1 to 65535.\nName must be an IANA_SVC_NAME." x-kubernetes-int-or-string: true required: - "port" type: "object" terminationGracePeriodSeconds: - description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset." + description: "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset." format: "int64" type: "integer" timeoutSeconds: - description: "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" + description: "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" format: "int32" type: "integer" type: "object" stdin: - description: "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false." + description: "Whether this container should allocate a buffer for stdin in the container runtime. If this\nis not set, reads from stdin in the container will always result in EOF.\nDefault is false." type: "boolean" stdinOnce: - description: "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false" + description: "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false" type: "boolean" terminationMessagePath: - description: "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated." + description: "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated." type: "string" terminationMessagePolicy: - description: "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated." + description: "Indicate how the termination message should be populated. File will use the contents of\nterminationMessagePath to populate the container status message on both success and failure.\nFallbackToLogsOnError will use the last chunk of container log output if the termination\nmessage file is empty and the container exited with an error.\nThe log output is limited to 2048 bytes or 80 lines, whichever is smaller.\nDefaults to File.\nCannot be updated." type: "string" tty: - description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false." + description: "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.\nDefault is false." type: "boolean" volumeDevices: description: "volumeDevices is the list of block devices to be used by the container." @@ -8078,27 +8078,27 @@ spec: type: "object" type: "array" volumeMounts: - description: "Pod volumes to mount into the container's filesystem. Cannot be updated." + description: "Pod volumes to mount into the container's filesystem.\nCannot be updated." items: description: "VolumeMount describes a mounting of a Volume within a container." properties: mountPath: - description: "Path within the container at which the volume should be mounted. Must not contain ':'." + description: "Path within the container at which the volume should be mounted. Must\nnot contain ':'." type: "string" mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" name: description: "This must match the Name of a Volume." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" required: - "mountPath" @@ -8106,7 +8106,7 @@ spec: type: "object" type: "array" workingDir: - description: "Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated." + description: "Container's working directory.\nIf not specified, the container runtime's default will be used, which\nmight be configured in the container image.\nCannot be updated." type: "string" required: - "name" @@ -8115,30 +8115,30 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" type: "object" pods: additionalProperties: - description: "AerospikePodStatus contains the Aerospike specific status of the Aerospike server pods." + description: "AerospikePodStatus contains the Aerospike specific status of the Aerospike\nserver pods." properties: aerospike: description: "Aerospike server instance summary for this pod." @@ -8183,7 +8183,7 @@ spec: description: "AerospikeConfigHash is ripemd160 hash of aerospikeConfig used by this pod" type: "string" dirtyVolumes: - description: "DirtyVolumes is the list of volume names that are removed from aerospike namespaces and will be cleaned during init if they are reused in any namespace." + description: "DirtyVolumes is the list of volume names that are removed\nfrom aerospike namespaces and will be cleaned during init\nif they are reused in any namespace." items: type: "string" type: "array" @@ -8203,7 +8203,7 @@ spec: nullable: true type: "array" initializedVolumes: - description: "InitializedVolumes is the list of volume names that have already been initialized." + description: "InitializedVolumes is the list of volume names that have already been\ninitialized." items: type: "string" type: "array" @@ -8231,10 +8231,10 @@ spec: - "podPort" - "podSpecHash" type: "object" - description: "Pods has Aerospike specific status of the pods. This is map instead of the conventional map as list convention to allow each pod to patch update its own status. The map key is the name of the pod." + description: "Pods has Aerospike specific status of the pods.\nThis is map instead of the conventional map as list convention to allow each pod to patch update its own\nstatus. The map key is the name of the pod." type: "object" rackConfig: - description: "RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration" + description: "RackConfig Configures the operator to deploy rack aware Aerospike cluster.\nPods will be deployed in given racks based on given configuration" nullable: true properties: namespaces: @@ -8252,7 +8252,7 @@ spec: type: "object" x-kubernetes-preserve-unknown-fields: true effectiveAerospikeConfig: - description: "Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global Aerospike config" + description: "Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global\nAerospike config" type: "object" x-kubernetes-preserve-unknown-fields: true effectivePodSpec: @@ -8265,9 +8265,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -8275,16 +8275,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -8296,16 +8296,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -8326,26 +8326,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -8357,16 +8357,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -8387,7 +8387,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -8395,21 +8395,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8421,38 +8421,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8464,23 +8464,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -8489,26 +8489,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8520,38 +8520,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8563,17 +8563,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -8584,7 +8584,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -8592,21 +8592,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8618,38 +8618,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8661,23 +8661,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -8686,26 +8686,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8717,38 +8717,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -8760,17 +8760,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -8786,23 +8786,23 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" @@ -8814,7 +8814,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -8836,7 +8836,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -8844,7 +8844,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -8859,7 +8859,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -8881,7 +8881,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -8889,7 +8889,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -8907,16 +8907,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -8926,7 +8926,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -8958,16 +8958,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -8979,7 +8979,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -9000,16 +9000,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -9027,11 +9027,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -9039,11 +9039,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -9051,7 +9051,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -9059,16 +9059,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -9076,7 +9076,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -9099,16 +9099,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9120,7 +9120,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -9143,14 +9143,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -9158,11 +9158,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -9173,12 +9173,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -9209,9 +9209,9 @@ spec: description: "Describes node affinity scheduling rules for the pod." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred." items: - description: "An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + description: "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." properties: preference: description: "A node selector term, associated with the corresponding weight." @@ -9219,16 +9219,16 @@ spec: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -9240,16 +9240,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -9270,26 +9270,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: nodeSelectorTerms: description: "Required. A list of node selector terms. The terms are ORed." items: - description: "A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm." + description: "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm." properties: matchExpressions: description: "A list of node selector requirements by node's labels." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -9301,16 +9301,16 @@ spec: matchFields: description: "A list of node selector requirements by node's fields." items: - description: "A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." properties: key: description: "The label key that the selector applies to." type: "string" operator: - description: "Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + description: "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." type: "string" values: - description: "An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch." + description: "An array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch." items: type: "string" type: "array" @@ -9331,7 +9331,7 @@ spec: description: "Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -9339,21 +9339,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9365,38 +9365,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9408,23 +9408,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -9433,26 +9433,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9464,38 +9464,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9507,17 +9507,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -9528,7 +9528,7 @@ spec: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." properties: preferredDuringSchedulingIgnoredDuringExecution: - description: "The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred." + description: "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred." items: description: "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" properties: @@ -9536,21 +9536,21 @@ spec: description: "Required. A pod affinity term, associated with the corresponding weight." properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9562,38 +9562,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9605,23 +9605,23 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" type: "object" weight: - description: "weight associated with matching the corresponding podAffinityTerm, in the range 1-100." + description: "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." format: "int32" type: "integer" required: @@ -9630,26 +9630,26 @@ spec: type: "object" type: "array" requiredDuringSchedulingIgnoredDuringExecution: - description: "If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied." + description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: - description: "Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running" + description: "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" properties: labelSelector: - description: "A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods." + description: "A label query over a set of resources, in this case pods.\nIf it's null, this PodAffinityTerm matches with no Pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9661,38 +9661,38 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" namespaceSelector: - description: "A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means \"this pod's namespace\". An empty selector ({}) matches all namespaces." + description: "A label query over the set of namespaces that the term applies to.\nThe term is applied to the union of the namespaces selected by this field\nand the ones listed in the namespaces field.\nnull selector and null or empty namespaces list means \"this pod's namespace\".\nAn empty selector ({}) matches all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -9704,17 +9704,17 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" namespaces: - description: "namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." + description: "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\"." items: type: "string" type: "array" topologyKey: - description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed." + description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" required: - "topologyKey" @@ -9730,29 +9730,29 @@ spec: tolerations: description: "Tolerations for this pod." items: - description: "The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator ." + description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: effect: - description: "Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." + description: "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute." type: "string" key: - description: "Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys." + description: "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys." type: "string" operator: - description: "Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category." + description: "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category." type: "string" tolerationSeconds: - description: "TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system." + description: "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system." format: "int64" type: "integer" value: - description: "Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string." + description: "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string." type: "string" type: "object" type: "array" type: "object" rackLabel: - description: "RackLabel for setting rack affinity. Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: }" + description: "RackLabel for setting rack affinity.\nRack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: }" type: "string" region: description: "Region name for setting rack affinity. Rack pods will be deployed to given Region" @@ -9764,7 +9764,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -9786,7 +9786,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -9794,7 +9794,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -9809,7 +9809,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -9831,7 +9831,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -9839,7 +9839,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -9857,16 +9857,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -9876,7 +9876,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -9908,16 +9908,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -9929,7 +9929,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -9950,16 +9950,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -9977,11 +9977,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -9989,11 +9989,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -10001,7 +10001,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -10009,16 +10009,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -10026,7 +10026,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -10049,16 +10049,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -10070,7 +10070,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -10093,14 +10093,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -10108,11 +10108,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -10123,12 +10123,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -10159,15 +10159,15 @@ spec: x-kubernetes-int-or-string: true type: "object" resources: - description: "Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Deprecated: Resources field is now part of containerSpec" + description: "Define resources requests and limits for Aerospike Server Container.\nPlease contact aerospike for proper sizing exercise\nOnly Memory and Cpu resources can be given\nDeprecated: Resources field is now part of containerSpec" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: - description: "Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container." + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" required: - "name" @@ -10183,7 +10183,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" requests: additionalProperties: @@ -10192,7 +10192,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" type: "object" type: "object" rosterNodeBlockList: @@ -10204,14 +10204,14 @@ spec: description: "SeedsFinderServices describes services which are used for seeding Aerospike nodes." properties: loadBalancer: - description: "LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster." + description: "LoadBalancer created to discover Aerospike Cluster nodes from outside of\nKubernetes cluster." properties: annotations: additionalProperties: type: "string" type: "object" externalTrafficPolicy: - description: "ServiceExternalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's \"externally-facing\" addresses (NodePorts, ExternalIPs, and LoadBalancer IPs." + description: "ServiceExternalTrafficPolicy describes how nodes distribute service traffic they\nreceive on one of the Service's \"externally-facing\" addresses (NodePorts, ExternalIPs,\nand LoadBalancer IPs." enum: - "Local" - "Cluster" @@ -10227,7 +10227,7 @@ spec: minimum: 1024.0 type: "integer" targetPort: - description: "TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. If there is no tls port configured then regular port from network.service is used." + description: "TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config.\nIf there is no tls port configured then regular port from network.service is used." format: "int32" maximum: 65535.0 minimum: 1024.0 @@ -10245,7 +10245,7 @@ spec: description: "BlockVolumePolicy contains default policies for block volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -10267,7 +10267,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -10275,7 +10275,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -10290,7 +10290,7 @@ spec: description: "FileSystemVolumePolicy contains default policies for filesystem volumes." properties: cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -10312,7 +10312,7 @@ spec: - "deleteFiles" type: "string" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -10320,7 +10320,7 @@ spec: - "deleteFiles" type: "string" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -10338,16 +10338,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -10357,7 +10357,7 @@ spec: - "path" type: "object" cascadeDelete: - description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster." + description: "CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is\nterminated and removed from the cluster." type: "boolean" effectiveCascadeDelete: description: "Effective/operative value to use for cascade delete after applying defaults." @@ -10389,16 +10389,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -10410,7 +10410,7 @@ spec: type: "object" type: "array" initMethod: - description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to \"none\"." + description: "InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the\nfirst time. Defaults to \"none\"." enum: - "none" - "dd" @@ -10431,16 +10431,16 @@ spec: mountOptions: properties: mountPropagation: - description: "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10." + description: "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10." type: "string" readOnly: - description: "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false." + description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" subPath: - description: "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root)." + description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." type: "string" subPathExpr: - description: "Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to \"\" (volume's root). SubPathExpr and SubPath are mutually exclusive." + description: "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(\nVAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive." type: "string" type: "object" path: @@ -10458,11 +10458,11 @@ spec: description: "ConfigMap represents a configMap that should populate this volume" properties: defaultMode: - description: "defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -10470,11 +10470,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -10482,7 +10482,7 @@ spec: type: "object" type: "array" name: - description: "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?" + description: "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Add other useful fields. apiVersion, kind, uid?" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -10490,16 +10490,16 @@ spec: type: "object" x-kubernetes-map-type: "atomic" emptyDir: - description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "EmptyDir represents a temporary directory that shares a pod's lifetime.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" properties: medium: - description: "medium represents what type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" type: "string" sizeLimit: anyOf: - type: "integer" - type: "string" - description: "sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" + description: "sizeLimit is the total amount of local storage required for this EmptyDir volume.\nThe size limit is also applicable for memory medium.\nThe maximum usage on memory medium EmptyDir would be the minimum value between\nthe SizeLimit specified here and the sum of memory limits of all containers in a pod.\nThe default is nil which means that the limit is undefined.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true type: "object" @@ -10507,7 +10507,7 @@ spec: description: "PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods." properties: accessModes: - description: "Name for creating PVC for this volume, Name or path should be given Name string `json:\"name\"`" + description: "Name for creating PVC for this volume, Name or path should be given\nName string `json:\"name\"`" items: type: "string" type: "array" @@ -10530,16 +10530,16 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -10551,7 +10551,7 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" x-kubernetes-map-type: "atomic" @@ -10574,14 +10574,14 @@ spec: - "volumeMode" type: "object" secret: - description: "Adapts a Secret into a volume. \n The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling." + description: "Adapts a Secret into a volume.\n\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." properties: defaultMode: - description: "defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" items: - description: "items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'." + description: "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." items: description: "Maps a string key to a path within a volume." properties: @@ -10589,11 +10589,11 @@ spec: description: "key is the key to project." type: "string" mode: - description: "mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set." + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." format: "int32" type: "integer" path: - description: "path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'." + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." type: "string" required: - "key" @@ -10604,12 +10604,12 @@ spec: description: "optional field specify whether the Secret or its keys must be defined" type: "boolean" secretName: - description: "secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret" + description: "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret" type: "string" type: "object" type: "object" wipeMethod: - description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes." + description: "WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format\nchanges." enum: - "none" - "dd" @@ -10628,10 +10628,10 @@ spec: description: "ValidationPolicy controls validation of the Aerospike cluster resource." properties: skipWorkDirValidate: - description: "skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. Defaults to false." + description: "skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage.\nDefaults to false." type: "boolean" skipXdrDlogFileValidate: - description: "ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. Defaults to false." + description: "ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage.\nDefaults to false." type: "boolean" required: - "skipWorkDirValidate" diff --git a/crd-catalog/apache/camel-k/camel.apache.org/v1/integrationplatforms.yaml b/crd-catalog/apache/camel-k/camel.apache.org/v1/integrationplatforms.yaml index c5a2ed190..7f41f8c5d 100644 --- a/crd-catalog/apache/camel-k/camel.apache.org/v1/integrationplatforms.yaml +++ b/crd-catalog/apache/camel-k/camel.apache.org/v1/integrationplatforms.yaml @@ -695,7 +695,7 @@ spec: - "knative-service" type: "string" useSSA: - description: "Use server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." + description: "Deprecated: won't be able to enforce client side update in the future.\nUse server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." type: "boolean" type: "object" deployment: @@ -2286,7 +2286,7 @@ spec: - "knative-service" type: "string" useSSA: - description: "Use server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." + description: "Deprecated: won't be able to enforce client side update in the future.\nUse server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." type: "boolean" type: "object" deployment: diff --git a/crd-catalog/apache/camel-k/camel.apache.org/v1/integrationprofiles.yaml b/crd-catalog/apache/camel-k/camel.apache.org/v1/integrationprofiles.yaml index 66025d5f8..8c32ab6a0 100644 --- a/crd-catalog/apache/camel-k/camel.apache.org/v1/integrationprofiles.yaml +++ b/crd-catalog/apache/camel-k/camel.apache.org/v1/integrationprofiles.yaml @@ -589,7 +589,7 @@ spec: - "knative-service" type: "string" useSSA: - description: "Use server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." + description: "Deprecated: won't be able to enforce client side update in the future.\nUse server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." type: "boolean" type: "object" deployment: @@ -2085,7 +2085,7 @@ spec: - "knative-service" type: "string" useSSA: - description: "Use server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." + description: "Deprecated: won't be able to enforce client side update in the future.\nUse server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." type: "boolean" type: "object" deployment: diff --git a/crd-catalog/apache/camel-k/camel.apache.org/v1/integrations.yaml b/crd-catalog/apache/camel-k/camel.apache.org/v1/integrations.yaml index a66d83659..5a576ad85 100644 --- a/crd-catalog/apache/camel-k/camel.apache.org/v1/integrations.yaml +++ b/crd-catalog/apache/camel-k/camel.apache.org/v1/integrations.yaml @@ -4213,7 +4213,7 @@ spec: - "knative-service" type: "string" useSSA: - description: "Use server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." + description: "Deprecated: won't be able to enforce client side update in the future.\nUse server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." type: "boolean" type: "object" deployment: diff --git a/crd-catalog/apache/camel-k/camel.apache.org/v1/pipes.yaml b/crd-catalog/apache/camel-k/camel.apache.org/v1/pipes.yaml index cb5e7f1f3..e05609b39 100644 --- a/crd-catalog/apache/camel-k/camel.apache.org/v1/pipes.yaml +++ b/crd-catalog/apache/camel-k/camel.apache.org/v1/pipes.yaml @@ -4200,7 +4200,7 @@ spec: - "knative-service" type: "string" useSSA: - description: "Use server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." + description: "Deprecated: won't be able to enforce client side update in the future.\nUse server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." type: "boolean" type: "object" deployment: diff --git a/crd-catalog/apache/camel-k/camel.apache.org/v1alpha1/kameletbindings.yaml b/crd-catalog/apache/camel-k/camel.apache.org/v1alpha1/kameletbindings.yaml index 3a235b203..dac13bb86 100644 --- a/crd-catalog/apache/camel-k/camel.apache.org/v1alpha1/kameletbindings.yaml +++ b/crd-catalog/apache/camel-k/camel.apache.org/v1alpha1/kameletbindings.yaml @@ -4202,7 +4202,7 @@ spec: - "knative-service" type: "string" useSSA: - description: "Use server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." + description: "Deprecated: won't be able to enforce client side update in the future.\nUse server-side apply to update the owned resources (default `true`).\nNote that it automatically falls back to client-side patching, if SSA is not available, e.g., on old Kubernetes clusters." type: "boolean" type: "object" deployment: diff --git a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusterdefinitions.yaml b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusterdefinitions.yaml index b418616f9..3d4eb5341 100644 --- a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusterdefinitions.yaml +++ b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusterdefinitions.yaml @@ -62,7 +62,7 @@ spec: description: "ClusterTopologyComponent defines a Component within a ClusterTopology." properties: compDef: - description: "Specifies the name or prefix of the ComponentDefinition custom resource(CR) that\ndefines the Component's characteristics and behavior.\n\n\nWhen a prefix is used, the system selects the ComponentDefinition CR with the latest version that matches the prefix.\nThis approach allows:\n\n\n1. Precise selection by providing the exact name of a ComponentDefinition CR.\n2. Flexible and automatic selection of the most up-to-date ComponentDefinition CR by specifying a prefix.\n\n\nOnce set, this field cannot be updated." + description: "Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition\ncustom resource (CR) that defines the Component's characteristics and behavior.\n\n\nThe system selects the ComponentDefinition CR with the latest version that matches the pattern.\nThis approach allows:\n\n\n1. Precise selection by providing the exact name of a ComponentDefinition CR.\n2. Flexible and automatic selection of the most up-to-date ComponentDefinition CR\n\t by specifying a name prefix or regular expression pattern.\n\n\nOnce set, this field cannot be updated." maxLength: 64 type: "string" name: diff --git a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusters.yaml b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusters.yaml index f33f66ea3..33028e0ea 100644 --- a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusters.yaml +++ b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusters.yaml @@ -176,7 +176,7 @@ spec: description: "Specifies Annotations to override or add for underlying Pods." type: "object" componentDef: - description: "References the name of a ComponentDefinition object.\nThe ComponentDefinition specifies the behavior and characteristics of the Component.\nIf both `componentDefRef` and `componentDef` are provided,\nthe `componentDef` will take precedence over `componentDefRef`." + description: "Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition\ncustom resource (CR) that defines the Component's characteristics and behavior.\n\n\nIf both `componentDefRef` and `componentDef` are provided,\nthe `componentDef` will take precedence over `componentDefRef`." maxLength: 64 pattern: "^[a-z0-9]([a-z0-9\\.\\-]*[a-z0-9])?$" type: "string" @@ -5207,7 +5207,7 @@ spec: description: "Specifies Annotations to override or add for underlying Pods." type: "object" componentDef: - description: "References the name of a ComponentDefinition object.\nThe ComponentDefinition specifies the behavior and characteristics of the Component.\nIf both `componentDefRef` and `componentDef` are provided,\nthe `componentDef` will take precedence over `componentDefRef`." + description: "Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition\ncustom resource (CR) that defines the Component's characteristics and behavior.\n\n\nIf both `componentDefRef` and `componentDef` are provided,\nthe `componentDef` will take precedence over `componentDefRef`." maxLength: 64 pattern: "^[a-z0-9]([a-z0-9\\.\\-]*[a-z0-9])?$" type: "string" @@ -9385,7 +9385,7 @@ spec: - "DedicatedNode" type: "string" terminationPolicy: - description: "Specifies the behavior when a Cluster is deleted.\nIt defines how resources, data, and backups associated with a Cluster are managed during termination.\nChoose a policy based on the desired level of resource cleanup and data preservation:\n\n\n- `DoNotTerminate`: Prevents deletion of the Cluster. This policy ensures that all resources remain intact.\n- `Halt`: Deletes Cluster resources like Pods and Services but retains Persistent Volume Claims (PVCs),\n allowing for data preservation while stopping other operations.\n- `Delete`: Extends the `Halt` policy by also removing PVCs, leading to a thorough cleanup while\n removing all persistent data.\n- `WipeOut`: An aggressive policy that deletes all Cluster resources, including volume snapshots and\n backups in external storage.\n This results in complete data removal and should be used cautiously, primarily in non-production environments\n to avoid irreversible data loss.\n\n\nWarning: Choosing an inappropriate termination policy can result in data loss.\nThe `WipeOut` policy is particularly risky in production environments due to its irreversible nature." + description: "Specifies the behavior when a Cluster is deleted.\nIt defines how resources, data, and backups associated with a Cluster are managed during termination.\nChoose a policy based on the desired level of resource cleanup and data preservation:\n\n\n- `DoNotTerminate`: Prevents deletion of the Cluster. This policy ensures that all resources remain intact.\n- `Halt`: Deletes Cluster resources like Pods and Services but retains Persistent Volume Claims (PVCs),\n allowing for data preservation while stopping other operations.\n Warning: Halt policy is deprecated in 0.9.1 and will have same meaning as DoNotTerminate.\n- `Delete`: Extends the `Halt` policy by also removing PVCs, leading to a thorough cleanup while\n removing all persistent data.\n- `WipeOut`: An aggressive policy that deletes all Cluster resources, including volume snapshots and\n backups in external storage.\n This results in complete data removal and should be used cautiously, primarily in non-production environments\n to avoid irreversible data loss.\n\n\nWarning: Choosing an inappropriate termination policy can result in data loss.\nThe `WipeOut` policy is particularly risky in production environments due to its irreversible nature." enum: - "DoNotTerminate" - "Halt" diff --git a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentdefinitions.yaml b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentdefinitions.yaml index 99200cc7f..1281cb104 100644 --- a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentdefinitions.yaml +++ b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentdefinitions.yaml @@ -65,6 +65,9 @@ spec: type: "string" type: "array" x-kubernetes-list-type: "set" + asSecret: + description: "Whether to store the final rendered parameters as a secret." + type: "boolean" constraintRef: description: "Specifies the name of the referenced configuration constraints object." maxLength: 63 @@ -143,7 +146,6 @@ spec: type: "string" required: - "name" - - "volumeName" type: "object" type: "array" x-kubernetes-list-map-keys: @@ -6481,7 +6483,6 @@ spec: type: "string" required: - "name" - - "volumeName" type: "object" type: "array" x-kubernetes-list-map-keys: @@ -6796,7 +6797,7 @@ spec: description: "Selects a defined var of a Component." properties: compDef: - description: "CompDef specifies the definition used by the component that the referent object resident in.\nIf not specified, the component itself will be used." + description: "Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition\ncustom resource (CR) used by the component that the referent object resident in.\n\n\nIf not specified, the component itself will be used." type: "string" componentName: description: "Reference to the name of the Component object." @@ -6917,7 +6918,7 @@ spec: description: "Selects a defined var of a Credential (SystemAccount)." properties: compDef: - description: "CompDef specifies the definition used by the component that the referent object resident in.\nIf not specified, the component itself will be used." + description: "Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition\ncustom resource (CR) used by the component that the referent object resident in.\n\n\nIf not specified, the component itself will be used." type: "string" multipleClusterObjectOption: description: "This option defines the behavior when multiple component objects match the specified @CompDef.\nIf not provided, an error will be raised when handling multiple matches." @@ -6980,7 +6981,7 @@ spec: description: "Selects a defined var of host-network resources." properties: compDef: - description: "CompDef specifies the definition used by the component that the referent object resident in.\nIf not specified, the component itself will be used." + description: "Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition\ncustom resource (CR) used by the component that the referent object resident in.\n\n\nIf not specified, the component itself will be used." type: "string" container: description: "ContainerVars defines the vars that can be referenced from a Container." @@ -7068,7 +7069,7 @@ spec: description: "Selects a defined var of a ServiceRef." properties: compDef: - description: "CompDef specifies the definition used by the component that the referent object resident in.\nIf not specified, the component itself will be used." + description: "Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition\ncustom resource (CR) used by the component that the referent object resident in.\n\n\nIf not specified, the component itself will be used." type: "string" endpoint: description: "VarOption defines whether a variable is required or optional." @@ -7149,7 +7150,7 @@ spec: description: "Selects a defined var of a Service." properties: compDef: - description: "CompDef specifies the definition used by the component that the referent object resident in.\nIf not specified, the component itself will be used." + description: "Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition\ncustom resource (CR) used by the component that the referent object resident in.\n\n\nIf not specified, the component itself will be used." type: "string" host: description: "VarOption defines whether a variable is required or optional." diff --git a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentversions.yaml b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentversions.yaml index 135cec873..769cd6941 100644 --- a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentversions.yaml +++ b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentversions.yaml @@ -53,7 +53,7 @@ spec: description: "ComponentVersionCompatibilityRule defines the compatibility between a set of component definitions and a set of releases." properties: compDefs: - description: "CompDefs specifies names for the component definitions associated with this ComponentVersion.\nEach name in the list can represent an exact name, or a name prefix.\n\n\nFor example:\n\n\n- \"mysql-8.0.30-v1alpha1\": Matches the exact name \"mysql-8.0.30-v1alpha1\"\n- \"mysql-8.0.30\": Matches all names starting with \"mysql-8.0.30\"" + description: "CompDefs specifies names for the component definitions associated with this ComponentVersion.\nEach name in the list can represent an exact name, a name prefix, or a regular expression pattern.\n\n\nFor example:\n\n\n- \"mysql-8.0.30-v1alpha1\": Matches the exact name \"mysql-8.0.30-v1alpha1\"\n- \"mysql-8.0.30\": Matches all names starting with \"mysql-8.0.30\"\n- \"^mysql-8.0.\\d{1,2}$\": Matches all names starting with \"mysql-8.0.\" followed by one or two digits." items: type: "string" maxItems: 128 diff --git a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/configurations.yaml b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/configurations.yaml index f528df9b0..19abdf127 100644 --- a/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/configurations.yaml +++ b/crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/configurations.yaml @@ -71,6 +71,9 @@ spec: type: "string" type: "array" x-kubernetes-list-type: "set" + asSecret: + description: "Whether to store the final rendered parameters as a secret." + type: "boolean" constraintRef: description: "Specifies the name of the referenced configuration constraints object." maxLength: 63 @@ -149,7 +152,6 @@ spec: type: "string" required: - "name" - - "volumeName" type: "object" importTemplateRef: description: "Specifies the user-defined configuration template.\n\n\nWhen provided, the `importTemplateRef` overrides the default configuration template\nspecified in `configSpec.templateRef`.\nThis allows users to customize the configuration template according to their specific requirements." diff --git a/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/aliases.yaml b/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/aliases.yaml index f84c5c9b0..cf751c6f0 100644 --- a/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/aliases.yaml +++ b/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/aliases.yaml @@ -72,6 +72,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" functionVersion: diff --git a/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/eventsourcemappings.yaml b/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/eventsourcemappings.yaml index a4e4fc517..7c94c48b1 100644 --- a/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/eventsourcemappings.yaml +++ b/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/eventsourcemappings.yaml @@ -72,6 +72,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" filterCriteria: @@ -97,6 +99,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" functionResponseTypes: @@ -129,6 +133,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" type: "array" diff --git a/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/functions.yaml b/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/functions.yaml index 10f4bb002..d493ca9d8 100644 --- a/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/functions.yaml +++ b/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/functions.yaml @@ -49,6 +49,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" s3Key: @@ -157,6 +159,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" layers: @@ -192,6 +196,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" runtime: @@ -235,6 +241,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" type: "array" @@ -252,6 +260,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" type: "array" diff --git a/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/functionurlconfigs.yaml b/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/functionurlconfigs.yaml index 36099aba6..f431810f9 100644 --- a/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/functionurlconfigs.yaml +++ b/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/functionurlconfigs.yaml @@ -68,6 +68,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" qualifier: diff --git a/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/versions.yaml b/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/versions.yaml index c039b8469..4ed24986f 100644 --- a/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/versions.yaml +++ b/crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/versions.yaml @@ -74,6 +74,8 @@ spec: properties: name: type: "string" + namespace: + type: "string" type: "object" type: "object" provisionedConcurrencyConfig: diff --git a/crd-catalog/aws/amazon-vpc-resource-controller-k8s/vpcresources.k8s.aws/v1alpha1/cninodes.yaml b/crd-catalog/aws/amazon-vpc-resource-controller-k8s/vpcresources.k8s.aws/v1alpha1/cninodes.yaml index 450c22a1a..b1725a60b 100644 --- a/crd-catalog/aws/amazon-vpc-resource-controller-k8s/vpcresources.k8s.aws/v1alpha1/cninodes.yaml +++ b/crd-catalog/aws/amazon-vpc-resource-controller-k8s/vpcresources.k8s.aws/v1alpha1/cninodes.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.9.0" + controller-gen.kubebuilder.io/version: "v0.14.0" name: "cninodes.vpcresources.k8s.aws" spec: group: "vpcresources.k8s.aws" @@ -25,15 +25,15 @@ spec: openAPIV3Schema: properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" spec: - description: "Important: Run \"make\" to regenerate code after modifying this file CNINodeSpec defines the desired state of CNINode" + description: "Important: Run \"make\" to regenerate code after modifying this file\nCNINodeSpec defines the desired state of CNINode" properties: features: items: diff --git a/crd-catalog/aws/amazon-vpc-resource-controller-k8s/vpcresources.k8s.aws/v1beta1/securitygrouppolicies.yaml b/crd-catalog/aws/amazon-vpc-resource-controller-k8s/vpcresources.k8s.aws/v1beta1/securitygrouppolicies.yaml index c7609f162..18a2f46a5 100644 --- a/crd-catalog/aws/amazon-vpc-resource-controller-k8s/vpcresources.k8s.aws/v1beta1/securitygrouppolicies.yaml +++ b/crd-catalog/aws/amazon-vpc-resource-controller-k8s/vpcresources.k8s.aws/v1beta1/securitygrouppolicies.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.9.0" + controller-gen.kubebuilder.io/version: "v0.14.0" name: "securitygrouppolicies.vpcresources.k8s.aws" spec: group: "vpcresources.k8s.aws" @@ -26,10 +26,10 @@ spec: description: "Custom Resource Definition for applying security groups to pods" properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -37,21 +37,21 @@ spec: description: "SecurityGroupPolicySpec defines the desired state of SecurityGroupPolicy" properties: podSelector: - description: "A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects." + description: "A label selector is a label query over a set of resources. The result of matchLabels and\nmatchExpressions are ANDed. An empty label selector matches all objects. A null\nlabel selector matches no objects." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -63,9 +63,10 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" securityGroups: description: "GroupIds contains the list of security groups that will be applied to the network interface of the pod matching the criteria." properties: @@ -78,21 +79,21 @@ spec: type: "array" type: "object" serviceAccountSelector: - description: "A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects." + description: "A label selector is a label query over a set of resources. The result of matchLabels and\nmatchExpressions are ANDed. An empty label selector matches all objects. A null\nlabel selector matches no objects." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -104,9 +105,10 @@ spec: matchLabels: additionalProperties: type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "object" type: "object" served: true diff --git a/crd-catalog/aws/karpenter-provider-aws/karpenter.k8s.aws/v1/ec2nodeclasses.yaml b/crd-catalog/aws/karpenter-provider-aws/karpenter.k8s.aws/v1/ec2nodeclasses.yaml index f7067d37d..eb5917ba4 100644 --- a/crd-catalog/aws/karpenter-provider-aws/karpenter.k8s.aws/v1/ec2nodeclasses.yaml +++ b/crd-catalog/aws/karpenter-provider-aws/karpenter.k8s.aws/v1/ec2nodeclasses.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.16.1" + controller-gen.kubebuilder.io/version: "v0.16.2" name: "ec2nodeclasses.karpenter.k8s.aws" spec: group: "karpenter.k8s.aws" diff --git a/crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1/nodeclaims.yaml b/crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1/nodeclaims.yaml index fbe14fb40..f9b0e95cb 100644 --- a/crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1/nodeclaims.yaml +++ b/crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1/nodeclaims.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.16.1" + controller-gen.kubebuilder.io/version: "v0.16.2" name: "nodeclaims.karpenter.sh" spec: group: "karpenter.sh" diff --git a/crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1/nodepools.yaml b/crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1/nodepools.yaml index 0665e2bd9..8fd608aae 100644 --- a/crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1/nodepools.yaml +++ b/crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1/nodepools.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.16.1" + controller-gen.kubebuilder.io/version: "v0.16.2" name: "nodepools.karpenter.sh" spec: group: "karpenter.sh" diff --git a/crd-catalog/backube/volsync/volsync.backube/v1alpha1/replicationdestinations.yaml b/crd-catalog/backube/volsync/volsync.backube/v1alpha1/replicationdestinations.yaml index c66edc3d8..158e993f1 100644 --- a/crd-catalog/backube/volsync/volsync.backube/v1alpha1/replicationdestinations.yaml +++ b/crd-catalog/backube/volsync/volsync.backube/v1alpha1/replicationdestinations.yaml @@ -868,6 +868,9 @@ spec: destinationPVC: description: "destinationPVC is a PVC to use as the transfer destination instead of\nautomatically provisioning one. Either this field or both capacity and\naccessModes must be specified." type: "string" + enableFileDeletion: + description: "enableFileDeletion will pass the --delete flag to the restic restore command.\nThis will remove files and directories in the pvc that do not exist in the snapshot being restored.\nDefaults to false." + type: "boolean" moverAffinity: description: "MoverAffinity allows specifying the PodAffinity that will be used by the data mover" properties: diff --git a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumclusterwideenvoyconfigs.yaml b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumclusterwideenvoyconfigs.yaml index ce7bc7f3d..cea11be63 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumclusterwideenvoyconfigs.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumclusterwideenvoyconfigs.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumclusterwideenvoyconfigs.cilium.io" spec: group: "cilium.io" @@ -27,27 +27,27 @@ spec: openAPIV3Schema: properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" spec: properties: backendServices: - description: "BackendServices specifies Kubernetes services whose backends are automatically synced to Envoy using EDS. Traffic for these services is not forwarded to an Envoy listener. This allows an Envoy listener load balance traffic to these backends while normal Cilium service load balancing takes care of balancing traffic for these services at the same time." + description: "BackendServices specifies Kubernetes services whose backends\nare automatically synced to Envoy using EDS. Traffic for these\nservices is not forwarded to an Envoy listener. This allows an\nEnvoy listener load balance traffic to these backends while\nnormal Cilium service load balancing takes care of balancing\ntraffic for these services at the same time." items: properties: name: - description: "Name is the name of a destination Kubernetes service that identifies traffic to be redirected." + description: "Name is the name of a destination Kubernetes service that identifies traffic\nto be redirected." type: "string" namespace: - description: "Namespace is the Kubernetes service namespace. In CiliumEnvoyConfig namespace defaults to the namespace of the CEC, In CiliumClusterwideEnvoyConfig namespace defaults to \"default\"." + description: "Namespace is the Kubernetes service namespace.\nIn CiliumEnvoyConfig namespace defaults to the namespace of the CEC,\nIn CiliumClusterwideEnvoyConfig namespace defaults to \"default\"." type: "string" number: - description: "Ports is a set of port numbers, which can be used for filtering in case of underlying is exposing multiple port numbers." + description: "Ports is a set of port numbers, which can be used for filtering in case of underlying\nis exposing multiple port numbers." items: type: "string" type: "array" @@ -56,18 +56,18 @@ spec: type: "object" type: "array" nodeSelector: - description: "NodeSelector is a label selector that determines to which nodes this configuration applies. If nil, then this config applies to all nodes." + description: "NodeSelector is a label selector that determines to which nodes\nthis configuration applies.\nIf nil, then this config applies to all nodes." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -75,7 +75,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -92,30 +92,31 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" resources: - description: "Envoy xDS resources, a list of the following Envoy resource types: type.googleapis.com/envoy.config.listener.v3.Listener, type.googleapis.com/envoy.config.route.v3.RouteConfiguration, type.googleapis.com/envoy.config.cluster.v3.Cluster, type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment, and type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret." + description: "Envoy xDS resources, a list of the following Envoy resource types:\ntype.googleapis.com/envoy.config.listener.v3.Listener,\ntype.googleapis.com/envoy.config.route.v3.RouteConfiguration,\ntype.googleapis.com/envoy.config.cluster.v3.Cluster,\ntype.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment, and\ntype.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret." items: type: "object" x-kubernetes-preserve-unknown-fields: true type: "array" services: - description: "Services specifies Kubernetes services for which traffic is forwarded to an Envoy listener for L7 load balancing. Backends of these services are automatically synced to Envoy usign EDS." + description: "Services specifies Kubernetes services for which traffic is\nforwarded to an Envoy listener for L7 load balancing. Backends\nof these services are automatically synced to Envoy usign EDS." items: properties: listener: - description: "Listener specifies the name of the Envoy listener the service traffic is redirected to. The listener must be specified in the Envoy 'resources' of the same CiliumEnvoyConfig. \n If omitted, the first listener specified in 'resources' is used." + description: "Listener specifies the name of the Envoy listener the\nservice traffic is redirected to. The listener must be\nspecified in the Envoy 'resources' of the same\nCiliumEnvoyConfig.\n\nIf omitted, the first listener specified in 'resources' is\nused." type: "string" name: - description: "Name is the name of a destination Kubernetes service that identifies traffic to be redirected." + description: "Name is the name of a destination Kubernetes service that identifies traffic\nto be redirected." type: "string" namespace: - description: "Namespace is the Kubernetes service namespace. In CiliumEnvoyConfig namespace this is overridden to the namespace of the CEC, In CiliumClusterwideEnvoyConfig namespace defaults to \"default\"." + description: "Namespace is the Kubernetes service namespace.\nIn CiliumEnvoyConfig namespace this is overridden to the namespace of the CEC,\nIn CiliumClusterwideEnvoyConfig namespace defaults to \"default\"." type: "string" ports: - description: "Ports is a set of service's frontend ports that should be redirected to the Envoy listener. By default all frontend ports of the service are redirected." + description: "Ports is a set of service's frontend ports that should be redirected to the Envoy\nlistener. By default all frontend ports of the service are redirected." items: type: "integer" type: "array" @@ -123,6 +124,8 @@ spec: - "name" type: "object" type: "array" + required: + - "resources" type: "object" required: - "metadata" @@ -130,9 +133,3 @@ spec: served: true storage: true subresources: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumclusterwidenetworkpolicies.yaml b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumclusterwidenetworkpolicies.yaml index fda05a615..c10e4dd21 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumclusterwidenetworkpolicies.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumclusterwidenetworkpolicies.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumclusterwidenetworkpolicies.cilium.io" spec: group: "cilium.io" @@ -25,13 +25,13 @@ spec: name: "v2" schema: openAPIV3Schema: - description: "CiliumClusterwideNetworkPolicy is a Kubernetes third-party resource with an modified version of CiliumNetworkPolicy which is cluster scoped rather than namespace scoped." + description: "CiliumClusterwideNetworkPolicy is a Kubernetes third-party resource with an\nmodified version of CiliumNetworkPolicy which is cluster scoped rather than\nnamespace scoped." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -48,12 +48,12 @@ spec: - "nodeSelector" properties: description: - description: "Description is a free form string, it can be used by the creator of the rule to store human readable explanation of the purpose of this rule. Rules cannot be identified by comment." + description: "Description is a free form string, it can be used by the creator of\nthe rule to store human readable explanation of the purpose of this\nrule. Rules cannot be identified by comment." type: "string" egress: - description: "Egress is a list of EgressRule which are enforced at egress. If omitted or empty, this rule does not apply at egress." + description: "Egress is a list of EgressRule which are enforced at egress.\nIf omitted or empty, this rule does not apply at egress." items: - description: "EgressRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. \n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule." + description: "EgressRule contains all rule types which can be applied at egress, i.e.\nnetwork traffic that originates inside the endpoint and exits the endpoint\nselected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members of the structure are specified, then all members\n must match in order for the rule to take effect. The exception to this\n rule is the ToRequires member; the effects of any Requires field in any\n rule will apply to all other rules as well.\n\n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are\n mutually exclusive. Only one of these members may be present within an\n individual rule." properties: authentication: description: "Authentication is the required authentication type for the allowed traffic, if any." @@ -69,7 +69,7 @@ spec: - "mode" type: "object" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to connect to. \n Example: Any endpoint with the label \"app=httpd\" is allowed to initiate type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is allowed to connect to.\n\nExample:\nAny endpoint with the label \"app=httpd\" is allowed to initiate\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -80,7 +80,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -89,7 +89,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -100,16 +100,16 @@ spec: type: "object" type: "array" toCIDR: - description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24" + description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections. Only connections destined for\noutside of the cluster and not targeting the host will be subject\nto CIDR rules. This will match on the destination IP address of\noutgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet\nwith no ExcludeCIDRs is equivalent. Overlaps are allowed between\nToCIDR and ToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" toCIDRSet: - description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." + description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections to in addition to connections\nwhich are allowed via ToEndpoints, along with a list of subnets contained\nwithin their corresponding IP block to which traffic should not be\nallowed. This will match on the destination IP address of outgoing\nconnections. Adding a prefix into ToCIDR or into ToCIDRSet with no\nExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and\nToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -125,34 +125,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" toEndpoints: - description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. \n Example: Any endpoint with the label \"role=frontend\" can communicate with any endpoint carrying the label \"role=backend\"." + description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to\nwhich the endpoints subject to the rule are allowed to communicate.\n\nExample:\nAny endpoint with the label \"role=frontend\" can communicate with any\nendpoint carrying the label \"role=backend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -160,7 +160,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -177,14 +177,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toEntities: - description: "ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`." + description: "ToEntities is a list of special entities to which the endpoint subject\nto the rule is allowed to initiate connections. Supported entities are\n`world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`,\n`health`,`unmanaged` and `all`." items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -200,7 +201,7 @@ spec: type: "string" type: "array" toFQDNs: - description: "ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result from DNS resolution of `ToFQDN.MatchName`s are added to the same EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and L7 rules within this EgressRule will also apply to these IPs. The DNS -> IP mapping is re-resolved periodically from within the cilium-agent, and the IPs in the DNS response are effected in the policy for selected pods as-is (i.e. the list of IPs is not modified in any way). Note: An explicit rule to allow for DNS traffic is needed for the pods, as ToFQDN counts as an egress rule and will enforce egress policy when PolicyEnforcment=default. Note: If the resolved IPs are IPs within the kubernetes cluster, the ToFQDN rule will not apply to that IP. Note: ToFQDN cannot occur in the same policy as other To* rules." + description: "ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result\nfrom DNS resolution of `ToFQDN.MatchName`s are added to the same\nEgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and\nL7 rules within this EgressRule will also apply to these IPs.\nThe DNS -> IP mapping is re-resolved periodically from within the\ncilium-agent, and the IPs in the DNS response are effected in the policy\nfor selected pods as-is (i.e. the list of IPs is not modified in any way).\nNote: An explicit rule to allow for DNS traffic is needed for the pods, as\nToFQDN counts as an egress rule and will enforce egress policy when\nPolicyEnforcment=default.\nNote: If the resolved IPs are IPs within the kubernetes cluster, the\nToFQDN rule will not apply to that IP.\nNote: ToFQDN cannot occur in the same policy as other To* rules." items: oneOf: - properties: @@ -213,19 +214,19 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" type: "array" toGroups: - description: "ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "ToGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\ntoGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -248,20 +249,20 @@ spec: type: "object" type: "array" toNodes: - description: "ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate." + description: "ToNodes is a list of nodes identified by an\nEndpointSelector to which endpoints subject to the rule is allowed to communicate." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -269,7 +270,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -286,29 +287,30 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to connect to. \n Example: Any endpoint with the label \"role=frontend\" is allowed to initiate connections to destination port 8080/tcp" + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is allowed to\nconnect to.\n\nExample:\nAny endpoint with the label \"role=frontend\" is allowed to initiate\nconnections to destination port 8080/tcp" items: - description: "PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met." + description: "PortRule is a list of ports/protocol combinations with optional Layer 7\nrules which must be met." properties: listener: - description: "listener specifies the name of a custom Envoy listener to which this traffic should be redirected to." + description: "listener specifies the name of a custom Envoy listener to which this traffic should be\nredirected to." properties: envoyConfig: - description: "EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined." + description: "EnvoyConfig is a reference to the CEC or CCEC resource in which\nthe listener is defined." properties: kind: - description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed." + description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or\nCiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy,\nrespectively. The only case this is currently explicitly needed is when referring to a\nCiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener\nfrom a cluster scoped policy is not allowed." enum: - "CiliumEnvoyConfig" - "CiliumClusterwideEnvoyConfig" type: "string" name: - description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in." + description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where\nthe listener is defined in." minLength: 1 type: "string" required: @@ -319,7 +321,7 @@ spec: minLength: 1 type: "string" priority: - description: "Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent." + description: "Priority for this Listener that is used when multiple rules would apply different\nlisteners to a policy map entry. Behavior of this is implementation dependent." maximum: 100.0 minimum: 1.0 type: "integer" @@ -328,28 +330,28 @@ spec: - "name" type: "object" originatingTLS: - description: "OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint." + description: "OriginatingTLS is the TLS context for the connections originated by\nthe L7 proxy. For egress policy this specifies the client-side TLS\nparameters for the upstream connection originating from the L7 proxy\nto the remote destination. For ingress policy this specifies the\nclient-side TLS parameters for the connection from the L7 proxy to\nthe local endpoint." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -366,11 +368,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -383,7 +385,7 @@ spec: maxItems: 40 type: "array" rules: - description: "Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced." + description: "Rules is a list of additional port level rules which must be met in\norder for the PortRule to allow the traffic. If omitted or empty,\nno layer 7 rules are enforced." oneOf: - properties: http: {} @@ -417,11 +419,11 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" @@ -429,15 +431,15 @@ spec: http: description: "HTTP specific rules." items: - description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. \n All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986." + description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule does not have any\neffect.\n\nAll fields of this type are extended POSIX regex as defined by IEEE Std\n1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax)\nmatched against the path of an incoming request. Currently it can contain\ncharacters disallowed from the conventional \"path\" part of a URL as defined\nby RFC 3986." properties: headerMatches: - description: "HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match." + description: "HeaderMatches is a list of HTTP headers which must be\npresent and match against the given values. Mismatch field can be used\nto specify what to do when there is no match." items: - description: "HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough." + description: "HeaderMatch extends the HeaderValue for matching requirement of a\nnamed header field against an immediate string, a secret value, or\na regex. If none of the optional fields is present, then the\nheader value is not matched, only presence of the header is enough." properties: mismatch: - description: "Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log." + description: "Mismatch identifies what to do in case there is no match. The default is\nto drop the request. Otherwise the overall rule is still considered as\nmatching, but the mismatches are logged in the access log." enum: - "LOG" - "ADD" @@ -449,63 +451,63 @@ spec: minLength: 1 type: "string" secret: - description: "Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no \"Value\" specified, the match will fail." + description: "Secret refers to a secret that contains the value to be matched against.\nThe secret must only contain one entry. If the referred secret does not\nexist, and there is no \"Value\" specified, the match will fail." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" value: - description: "Value matches the exact value of the header. Can be specified either alone or together with \"Secret\"; will be used as the header value if the secret can not be found in the latter case." + description: "Value matches the exact value of the header. Can be specified either\nalone or together with \"Secret\"; will be used as the header value if the\nsecret can not be found in the latter case." type: "string" required: - "name" type: "object" type: "array" headers: - description: "Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present." + description: "Headers is a list of HTTP headers which must be present in the\nrequest. If omitted or empty, requests are allowed regardless of\nheaders present." items: type: "string" type: "array" host: - description: "Host is an extended POSIX regex matched against the host header of a request. Examples: \n - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\\.bar\\.com will only match the host foo.bar.com \n If omitted or empty, the value of the host header is ignored." + description: "Host is an extended POSIX regex matched against the host header of a\nrequest. Examples:\n\n- foo.bar.com will match the host fooXbar.com or foo-bar.com\n- foo\\.bar\\.com will only match the host foo.bar.com\n\nIf omitted or empty, the value of the host header is ignored." format: "idn-hostname" type: "string" method: - description: "Method is an extended POSIX regex matched against the method of a request, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ... \n If omitted or empty, all methods are allowed." + description: "Method is an extended POSIX regex matched against the method of a\nrequest, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ...\n\nIf omitted or empty, all methods are allowed." type: "string" path: - description: "Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986. \n If omitted or empty, all paths are all allowed." + description: "Path is an extended POSIX regex matched against the path of a\nrequest. Currently it can contain characters disallowed from the\nconventional \"path\" part of a URL as defined by RFC 3986.\n\nIf omitted or empty, all paths are all allowed." type: "string" type: "object" type: "array" kafka: description: "Kafka-specific rules." items: - description: "PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages." + description: "PortRule is a list of Kafka protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule will match all\nKafka messages." properties: apiKey: - description: "APIKey is a case-insensitive string matched against the key of a request, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys \n If omitted or empty, and if Role is not specified, then all keys are allowed." + description: "APIKey is a case-insensitive string matched against the key of a\nrequest, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al\nReference: https://kafka.apache.org/protocol#protocol_api_keys\n\nIf omitted or empty, and if Role is not specified, then all keys are allowed." type: "string" apiVersion: - description: "APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. \n If omitted or empty, all versions are allowed." + description: "APIVersion is the version matched against the api version of the\nKafka message. If set, it has to be a string representing a positive\ninteger.\n\nIf omitted or empty, all versions are allowed." type: "string" clientID: - description: "ClientID is the client identifier as provided in the request. \n From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. \n If omitted or empty, all client identifiers are allowed." + description: "ClientID is the client identifier as provided in the request.\n\nFrom Kafka protocol documentation:\nThis is a user supplied identifier for the client application. The\nuser can use any identifier they like and it will be used when\nlogging errors, monitoring aggregates, etc. For example, one might\nwant to monitor not just the requests per second overall, but the\nnumber coming from each client application (each of which could\nreside on multiple servers). This id acts as a logical grouping\nacross all requests from a particular client.\n\nIf omitted or empty, all client identifiers are allowed." type: "string" role: - description: "Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as \"produce\" or \"consume\". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. \n The following values are supported: - \"produce\": Allow producing to the topics specified in the rule - \"consume\": Allow consuming from the topics specified in the rule \n This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. \n If omitted or empty, and if APIKey is not specified, then all keys are allowed." + description: "Role is a case-insensitive string and describes a group of API keys\nnecessary to perform certain higher-level Kafka operations such as \"produce\"\nor \"consume\". A Role automatically expands into all APIKeys required\nto perform the specified higher-level operation.\n\nThe following values are supported:\n - \"produce\": Allow producing to the topics specified in the rule\n - \"consume\": Allow consuming from the topics specified in the rule\n\nThis field is incompatible with the APIKey field, i.e APIKey and Role\ncannot both be specified in the same rule.\n\nIf omitted or empty, and if APIKey is not specified, then all keys are\nallowed." enum: - "produce" - "consume" type: "string" topic: - description: "Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. \n This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. \n Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. \n If omitted or empty, all topics are allowed." + description: "Topic is the topic name contained in the message. If a Kafka request\ncontains multiple topics, then all topics must be allowed or the\nmessage will be rejected.\n\nThis constraint is ignored if the matched request message type\ndoesn't contain any topic. Maximum size of Topic can be 249\ncharacters as per recent Kafka spec and allowed characters are\na-z, A-Z, 0-9, -, . and _.\n\nOlder Kafka versions had longer topic lengths of 255, but in Kafka 0.10\nversion the length was changed from 255 to 249. For compatibility\nreasons we are using 255.\n\nIf omitted or empty, all topics are allowed." maxLength: 255 type: "string" type: "object" @@ -515,7 +517,7 @@ spec: items: additionalProperties: type: "string" - description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect." + description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as\nprotocol constraints. All fields are optional, if all fields are empty or\nmissing, the rule does not have any effect." type: "object" type: "array" l7proto: @@ -523,33 +525,33 @@ spec: type: "string" type: "object" serverNames: - description: "ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake." + description: "ServerNames is a list of allowed TLS SNI values. If not empty, then\nTLS must be present and one of the provided SNIs must be indicated in the\nTLS handshake." items: type: "string" type: "array" terminatingTLS: - description: "TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy." + description: "TerminatingTLS is the TLS context for the connection terminated by\nthe L7 proxy. For egress policy this specifies the server-side TLS\nparameters to be applied on the connections originated from the local\nendpoint and terminated by the L7 proxy. For ingress policy this specifies\nthe server-side TLS parameters to be applied on the connections\noriginated from a remote source and terminated by the L7 proxy." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -557,20 +559,20 @@ spec: type: "object" type: "array" toRequires: - description: "ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires any endpoint to which it communicates to also carry the label \"team=A\"." + description: "ToRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be able to connect to other\nendpoints. These additional constraints do no by itself grant access\nprivileges and must always be accompanied with at least one matching\nToEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires any endpoint to which it\ncommunicates to also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -578,7 +580,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -595,12 +597,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toServices: - description: "ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. \n Example: Any endpoint with the label \"app=backend-app\" is allowed to initiate connections to all cidrs backing the \"external-service\" service" + description: "ToServices is a list of services to which the endpoint subject\nto the rule is allowed to initiate connections.\nCurrently Cilium only supports toServices for K8s services without\nselectors.\n\nExample:\nAny endpoint with the label \"app=backend-app\" is allowed to\ninitiate connections to all cidrs backing the \"external-service\" service" items: description: "Service wraps around selectors for services" properties: @@ -623,13 +626,13 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -637,7 +640,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -654,9 +657,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" required: - "selector" type: "object" @@ -665,12 +669,12 @@ spec: type: "object" type: "array" egressDeny: - description: "EgressDeny is a list of EgressDenyRule which are enforced at egress. Any rule inserted here will be denied regardless of the allowed egress rules in the 'egress' field. If omitted or empty, this rule does not apply at egress." + description: "EgressDeny is a list of EgressDenyRule which are enforced at egress.\nAny rule inserted here will be denied regardless of the allowed egress\nrules in the 'egress' field.\nIf omitted or empty, this rule does not apply at egress." items: - description: "EgressDenyRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. \n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule." + description: "EgressDenyRule contains all rule types which can be applied at egress, i.e.\nnetwork traffic that originates inside the endpoint and exits the endpoint\nselected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members of the structure are specified, then all members\n must match in order for the rule to take effect. The exception to this\n rule is the ToRequires member; the effects of any Requires field in any\n rule will apply to all other rules as well.\n\n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are\n mutually exclusive. Only one of these members may be present within an\n individual rule." properties: icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to connect to. \n Example: Any endpoint with the label \"app=httpd\" is not allowed to initiate type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is not allowed to connect to.\n\nExample:\nAny endpoint with the label \"app=httpd\" is not allowed to initiate\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -681,7 +685,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -690,7 +694,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -701,16 +705,16 @@ spec: type: "object" type: "array" toCIDR: - description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24" + description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections. Only connections destined for\noutside of the cluster and not targeting the host will be subject\nto CIDR rules. This will match on the destination IP address of\noutgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet\nwith no ExcludeCIDRs is equivalent. Overlaps are allowed between\nToCIDR and ToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" toCIDRSet: - description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." + description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections to in addition to connections\nwhich are allowed via ToEndpoints, along with a list of subnets contained\nwithin their corresponding IP block to which traffic should not be\nallowed. This will match on the destination IP address of outgoing\nconnections. Adding a prefix into ToCIDR or into ToCIDRSet with no\nExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and\nToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -726,34 +730,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" toEndpoints: - description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. \n Example: Any endpoint with the label \"role=frontend\" can communicate with any endpoint carrying the label \"role=backend\"." + description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to\nwhich the endpoints subject to the rule are allowed to communicate.\n\nExample:\nAny endpoint with the label \"role=frontend\" can communicate with any\nendpoint carrying the label \"role=backend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -761,7 +765,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -778,14 +782,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toEntities: - description: "ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`." + description: "ToEntities is a list of special entities to which the endpoint subject\nto the rule is allowed to initiate connections. Supported entities are\n`world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`,\n`health`,`unmanaged` and `all`." items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -801,9 +806,9 @@ spec: type: "string" type: "array" toGroups: - description: "ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "ToGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\ntoGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -826,20 +831,20 @@ spec: type: "object" type: "array" toNodes: - description: "ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate." + description: "ToNodes is a list of nodes identified by an\nEndpointSelector to which endpoints subject to the rule is allowed to communicate." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -847,7 +852,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -864,14 +869,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to connect to. \n Example: Any endpoint with the label \"role=frontend\" is not allowed to initiate connections to destination port 8080/tcp" + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is not allowed to connect\nto.\n\nExample:\nAny endpoint with the label \"role=frontend\" is not allowed to initiate\nconnections to destination port 8080/tcp" items: - description: "PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies." + description: "PortDenyRule is a list of ports/protocol that should be used for deny\npolicies. This structure lacks the L7Rules since it's not supported in deny\npolicies." properties: ports: description: "Ports is a list of L4 port/protocol" @@ -885,11 +891,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -903,20 +909,20 @@ spec: type: "object" type: "array" toRequires: - description: "ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires any endpoint to which it communicates to also carry the label \"team=A\"." + description: "ToRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be able to connect to other\nendpoints. These additional constraints do no by itself grant access\nprivileges and must always be accompanied with at least one matching\nToEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires any endpoint to which it\ncommunicates to also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -924,7 +930,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -941,12 +947,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toServices: - description: "ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. \n Example: Any endpoint with the label \"app=backend-app\" is allowed to initiate connections to all cidrs backing the \"external-service\" service" + description: "ToServices is a list of services to which the endpoint subject\nto the rule is allowed to initiate connections.\nCurrently Cilium only supports toServices for K8s services without\nselectors.\n\nExample:\nAny endpoint with the label \"app=backend-app\" is allowed to\ninitiate connections to all cidrs backing the \"external-service\" service" items: description: "Service wraps around selectors for services" properties: @@ -969,13 +976,13 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -983,7 +990,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1000,9 +1007,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" required: - "selector" type: "object" @@ -1011,28 +1019,28 @@ spec: type: "object" type: "array" enableDefaultDeny: - description: "EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. \n If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. \n If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. \n This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode." + description: "EnableDefaultDeny determines whether this policy configures the\nsubject endpoint(s) to have a default deny mode. If enabled,\nthis causes all traffic not explicitly allowed by a network policy\nto be dropped.\n\nIf not specified, the default is true for each traffic direction\nthat has rules, and false otherwise. For example, if a policy\nonly has Ingress or IngressDeny rules, then the default for\ningress is true and egress is false.\n\nIf multiple policies apply to an endpoint, that endpoint's default deny\nwill be enabled if any policy requests it.\n\nThis is useful for creating broad-based network policies that will not\ncause endpoints to enter default-deny mode." properties: egress: - description: "Whether or not the endpoint should have a default-deny rule applied to egress traffic." + description: "Whether or not the endpoint should have a default-deny rule applied\nto egress traffic." type: "boolean" ingress: - description: "Whether or not the endpoint should have a default-deny rule applied to ingress traffic." + description: "Whether or not the endpoint should have a default-deny rule applied\nto ingress traffic." type: "boolean" type: "object" endpointSelector: - description: "EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive." + description: "EndpointSelector selects all endpoints which should be subject to\nthis rule. EndpointSelector and NodeSelector cannot be both empty and\nare mutually exclusive." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1040,7 +1048,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1057,13 +1065,14 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" ingress: - description: "Ingress is a list of IngressRule which are enforced at ingress. If omitted or empty, this rule does not apply at ingress." + description: "Ingress is a list of IngressRule which are enforced at ingress.\nIf omitted or empty, this rule does not apply at ingress." items: - description: "IngressRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. \n - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule." + description: "IngressRule contains all rule types which can be applied at ingress,\ni.e. network traffic that originates outside of the endpoint and\nis entering the endpoint selected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members are set, all of them need to match in order for\n the rule to take effect. The exception to this rule is FromRequires field;\n the effects of any Requires field in any rule will apply to all other\n rules as well.\n\n - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually\n exclusive. Only one of these members may be present within an individual\n rule." properties: authentication: description: "Authentication is the required authentication type for the allowed traffic, if any." @@ -1079,16 +1088,16 @@ spec: - "mode" type: "object" fromCIDR: - description: "FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.3.9.1" + description: "FromCIDR is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from. Only connections which\ndo *not* originate from the cluster or from the local host are subject\nto CIDR rules. In order to allow in-cluster connectivity, use the\nFromEndpoints field. This will match on the source IP address of\nincoming connections. Adding a prefix into FromCIDR or into\nFromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are\nallowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.3.9.1" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" fromCIDRSet: - description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." + description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from in addition to FromEndpoints,\nalong with a list of subnets contained within their corresponding IP block\nfrom which traffic should not be allowed.\nThis will match on the source IP address of incoming connections. Adding\na prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is\nequivalent. Overlaps are allowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -1104,34 +1113,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" fromEndpoints: - description: "FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. \n Example: Any endpoint with the label \"role=backend\" can be consumed by any endpoint carrying the label \"role=frontend\"." + description: "FromEndpoints is a list of endpoints identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule.\n\nExample:\nAny endpoint with the label \"role=backend\" can be consumed by any\nendpoint carrying the label \"role=frontend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1139,7 +1148,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1156,14 +1165,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromEntities: - description: "FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host`" + description: "FromEntities is a list of special entities which the endpoint subject\nto the rule is allowed to receive connections from. Supported entities are\n`world`, `cluster` and `host`" items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -1179,9 +1189,9 @@ spec: type: "string" type: "array" fromGroups: - description: "FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "FromGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\nFromGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -1204,20 +1214,20 @@ spec: type: "object" type: "array" fromNodes: - description: "FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule." + description: "FromNodes is a list of nodes identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1225,7 +1235,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1242,25 +1252,26 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromRequires: - description: "FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires consuming endpoint to also carry the label \"team=A\"." + description: "FromRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be reachable. These\nadditional constraints do no by itself grant access privileges and\nmust always be accompanied with at least one matching FromEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires consuming endpoint\nto also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1268,7 +1279,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1285,12 +1296,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can only accept incoming type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can only accept incoming\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -1301,7 +1313,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -1310,7 +1322,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -1321,24 +1333,24 @@ spec: type: "object" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can only accept incoming connections on port 80/tcp." + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can only accept incoming\nconnections on port 80/tcp." items: - description: "PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met." + description: "PortRule is a list of ports/protocol combinations with optional Layer 7\nrules which must be met." properties: listener: - description: "listener specifies the name of a custom Envoy listener to which this traffic should be redirected to." + description: "listener specifies the name of a custom Envoy listener to which this traffic should be\nredirected to." properties: envoyConfig: - description: "EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined." + description: "EnvoyConfig is a reference to the CEC or CCEC resource in which\nthe listener is defined." properties: kind: - description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed." + description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or\nCiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy,\nrespectively. The only case this is currently explicitly needed is when referring to a\nCiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener\nfrom a cluster scoped policy is not allowed." enum: - "CiliumEnvoyConfig" - "CiliumClusterwideEnvoyConfig" type: "string" name: - description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in." + description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where\nthe listener is defined in." minLength: 1 type: "string" required: @@ -1349,7 +1361,7 @@ spec: minLength: 1 type: "string" priority: - description: "Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent." + description: "Priority for this Listener that is used when multiple rules would apply different\nlisteners to a policy map entry. Behavior of this is implementation dependent." maximum: 100.0 minimum: 1.0 type: "integer" @@ -1358,28 +1370,28 @@ spec: - "name" type: "object" originatingTLS: - description: "OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint." + description: "OriginatingTLS is the TLS context for the connections originated by\nthe L7 proxy. For egress policy this specifies the client-side TLS\nparameters for the upstream connection originating from the L7 proxy\nto the remote destination. For ingress policy this specifies the\nclient-side TLS parameters for the connection from the L7 proxy to\nthe local endpoint." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -1396,11 +1408,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -1413,7 +1425,7 @@ spec: maxItems: 40 type: "array" rules: - description: "Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced." + description: "Rules is a list of additional port level rules which must be met in\norder for the PortRule to allow the traffic. If omitted or empty,\nno layer 7 rules are enforced." oneOf: - properties: http: {} @@ -1447,11 +1459,11 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" @@ -1459,15 +1471,15 @@ spec: http: description: "HTTP specific rules." items: - description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. \n All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986." + description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule does not have any\neffect.\n\nAll fields of this type are extended POSIX regex as defined by IEEE Std\n1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax)\nmatched against the path of an incoming request. Currently it can contain\ncharacters disallowed from the conventional \"path\" part of a URL as defined\nby RFC 3986." properties: headerMatches: - description: "HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match." + description: "HeaderMatches is a list of HTTP headers which must be\npresent and match against the given values. Mismatch field can be used\nto specify what to do when there is no match." items: - description: "HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough." + description: "HeaderMatch extends the HeaderValue for matching requirement of a\nnamed header field against an immediate string, a secret value, or\na regex. If none of the optional fields is present, then the\nheader value is not matched, only presence of the header is enough." properties: mismatch: - description: "Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log." + description: "Mismatch identifies what to do in case there is no match. The default is\nto drop the request. Otherwise the overall rule is still considered as\nmatching, but the mismatches are logged in the access log." enum: - "LOG" - "ADD" @@ -1479,63 +1491,63 @@ spec: minLength: 1 type: "string" secret: - description: "Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no \"Value\" specified, the match will fail." + description: "Secret refers to a secret that contains the value to be matched against.\nThe secret must only contain one entry. If the referred secret does not\nexist, and there is no \"Value\" specified, the match will fail." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" value: - description: "Value matches the exact value of the header. Can be specified either alone or together with \"Secret\"; will be used as the header value if the secret can not be found in the latter case." + description: "Value matches the exact value of the header. Can be specified either\nalone or together with \"Secret\"; will be used as the header value if the\nsecret can not be found in the latter case." type: "string" required: - "name" type: "object" type: "array" headers: - description: "Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present." + description: "Headers is a list of HTTP headers which must be present in the\nrequest. If omitted or empty, requests are allowed regardless of\nheaders present." items: type: "string" type: "array" host: - description: "Host is an extended POSIX regex matched against the host header of a request. Examples: \n - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\\.bar\\.com will only match the host foo.bar.com \n If omitted or empty, the value of the host header is ignored." + description: "Host is an extended POSIX regex matched against the host header of a\nrequest. Examples:\n\n- foo.bar.com will match the host fooXbar.com or foo-bar.com\n- foo\\.bar\\.com will only match the host foo.bar.com\n\nIf omitted or empty, the value of the host header is ignored." format: "idn-hostname" type: "string" method: - description: "Method is an extended POSIX regex matched against the method of a request, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ... \n If omitted or empty, all methods are allowed." + description: "Method is an extended POSIX regex matched against the method of a\nrequest, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ...\n\nIf omitted or empty, all methods are allowed." type: "string" path: - description: "Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986. \n If omitted or empty, all paths are all allowed." + description: "Path is an extended POSIX regex matched against the path of a\nrequest. Currently it can contain characters disallowed from the\nconventional \"path\" part of a URL as defined by RFC 3986.\n\nIf omitted or empty, all paths are all allowed." type: "string" type: "object" type: "array" kafka: description: "Kafka-specific rules." items: - description: "PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages." + description: "PortRule is a list of Kafka protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule will match all\nKafka messages." properties: apiKey: - description: "APIKey is a case-insensitive string matched against the key of a request, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys \n If omitted or empty, and if Role is not specified, then all keys are allowed." + description: "APIKey is a case-insensitive string matched against the key of a\nrequest, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al\nReference: https://kafka.apache.org/protocol#protocol_api_keys\n\nIf omitted or empty, and if Role is not specified, then all keys are allowed." type: "string" apiVersion: - description: "APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. \n If omitted or empty, all versions are allowed." + description: "APIVersion is the version matched against the api version of the\nKafka message. If set, it has to be a string representing a positive\ninteger.\n\nIf omitted or empty, all versions are allowed." type: "string" clientID: - description: "ClientID is the client identifier as provided in the request. \n From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. \n If omitted or empty, all client identifiers are allowed." + description: "ClientID is the client identifier as provided in the request.\n\nFrom Kafka protocol documentation:\nThis is a user supplied identifier for the client application. The\nuser can use any identifier they like and it will be used when\nlogging errors, monitoring aggregates, etc. For example, one might\nwant to monitor not just the requests per second overall, but the\nnumber coming from each client application (each of which could\nreside on multiple servers). This id acts as a logical grouping\nacross all requests from a particular client.\n\nIf omitted or empty, all client identifiers are allowed." type: "string" role: - description: "Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as \"produce\" or \"consume\". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. \n The following values are supported: - \"produce\": Allow producing to the topics specified in the rule - \"consume\": Allow consuming from the topics specified in the rule \n This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. \n If omitted or empty, and if APIKey is not specified, then all keys are allowed." + description: "Role is a case-insensitive string and describes a group of API keys\nnecessary to perform certain higher-level Kafka operations such as \"produce\"\nor \"consume\". A Role automatically expands into all APIKeys required\nto perform the specified higher-level operation.\n\nThe following values are supported:\n - \"produce\": Allow producing to the topics specified in the rule\n - \"consume\": Allow consuming from the topics specified in the rule\n\nThis field is incompatible with the APIKey field, i.e APIKey and Role\ncannot both be specified in the same rule.\n\nIf omitted or empty, and if APIKey is not specified, then all keys are\nallowed." enum: - "produce" - "consume" type: "string" topic: - description: "Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. \n This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. \n Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. \n If omitted or empty, all topics are allowed." + description: "Topic is the topic name contained in the message. If a Kafka request\ncontains multiple topics, then all topics must be allowed or the\nmessage will be rejected.\n\nThis constraint is ignored if the matched request message type\ndoesn't contain any topic. Maximum size of Topic can be 249\ncharacters as per recent Kafka spec and allowed characters are\na-z, A-Z, 0-9, -, . and _.\n\nOlder Kafka versions had longer topic lengths of 255, but in Kafka 0.10\nversion the length was changed from 255 to 249. For compatibility\nreasons we are using 255.\n\nIf omitted or empty, all topics are allowed." maxLength: 255 type: "string" type: "object" @@ -1545,7 +1557,7 @@ spec: items: additionalProperties: type: "string" - description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect." + description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as\nprotocol constraints. All fields are optional, if all fields are empty or\nmissing, the rule does not have any effect." type: "object" type: "array" l7proto: @@ -1553,33 +1565,33 @@ spec: type: "string" type: "object" serverNames: - description: "ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake." + description: "ServerNames is a list of allowed TLS SNI values. If not empty, then\nTLS must be present and one of the provided SNIs must be indicated in the\nTLS handshake." items: type: "string" type: "array" terminatingTLS: - description: "TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy." + description: "TerminatingTLS is the TLS context for the connection terminated by\nthe L7 proxy. For egress policy this specifies the server-side TLS\nparameters to be applied on the connections originated from the local\nendpoint and terminated by the L7 proxy. For ingress policy this specifies\nthe server-side TLS parameters to be applied on the connections\noriginated from a remote source and terminated by the L7 proxy." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -1589,21 +1601,21 @@ spec: type: "object" type: "array" ingressDeny: - description: "IngressDeny is a list of IngressDenyRule which are enforced at ingress. Any rule inserted here will be denied regardless of the allowed ingress rules in the 'ingress' field. If omitted or empty, this rule does not apply at ingress." + description: "IngressDeny is a list of IngressDenyRule which are enforced at ingress.\nAny rule inserted here will be denied regardless of the allowed ingress\nrules in the 'ingress' field.\nIf omitted or empty, this rule does not apply at ingress." items: - description: "IngressDenyRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. \n - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule." + description: "IngressDenyRule contains all rule types which can be applied at ingress,\ni.e. network traffic that originates outside of the endpoint and\nis entering the endpoint selected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members are set, all of them need to match in order for\n the rule to take effect. The exception to this rule is FromRequires field;\n the effects of any Requires field in any rule will apply to all other\n rules as well.\n\n - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually\n exclusive. Only one of these members may be present within an individual\n rule." properties: fromCIDR: - description: "FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.3.9.1" + description: "FromCIDR is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from. Only connections which\ndo *not* originate from the cluster or from the local host are subject\nto CIDR rules. In order to allow in-cluster connectivity, use the\nFromEndpoints field. This will match on the source IP address of\nincoming connections. Adding a prefix into FromCIDR or into\nFromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are\nallowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.3.9.1" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" fromCIDRSet: - description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." + description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from in addition to FromEndpoints,\nalong with a list of subnets contained within their corresponding IP block\nfrom which traffic should not be allowed.\nThis will match on the source IP address of incoming connections. Adding\na prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is\nequivalent. Overlaps are allowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -1619,34 +1631,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" fromEndpoints: - description: "FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. \n Example: Any endpoint with the label \"role=backend\" can be consumed by any endpoint carrying the label \"role=frontend\"." + description: "FromEndpoints is a list of endpoints identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule.\n\nExample:\nAny endpoint with the label \"role=backend\" can be consumed by any\nendpoint carrying the label \"role=frontend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1654,7 +1666,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1671,14 +1683,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromEntities: - description: "FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host`" + description: "FromEntities is a list of special entities which the endpoint subject\nto the rule is allowed to receive connections from. Supported entities are\n`world`, `cluster` and `host`" items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -1694,9 +1707,9 @@ spec: type: "string" type: "array" fromGroups: - description: "FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "FromGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\nFromGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -1719,20 +1732,20 @@ spec: type: "object" type: "array" fromNodes: - description: "FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule." + description: "FromNodes is a list of nodes identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1740,7 +1753,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1757,25 +1770,26 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromRequires: - description: "FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires consuming endpoint to also carry the label \"team=A\"." + description: "FromRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be reachable. These\nadditional constraints do no by itself grant access privileges and\nmust always be accompanied with at least one matching FromEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires consuming endpoint\nto also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1783,7 +1797,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1800,12 +1814,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can not accept incoming type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is not allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can not accept incoming\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -1816,7 +1831,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -1825,7 +1840,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -1836,9 +1851,9 @@ spec: type: "object" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can not accept incoming connections on port 80/tcp." + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is not allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can not accept incoming\nconnections on port 80/tcp." items: - description: "PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies." + description: "PortDenyRule is a list of ports/protocol that should be used for deny\npolicies. This structure lacks the L7Rules since it's not supported in deny\npolicies." properties: ports: description: "Ports is a list of L4 port/protocol" @@ -1852,11 +1867,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -1872,7 +1887,7 @@ spec: type: "object" type: "array" labels: - description: "Labels is a list of optional strings which can be used to re-identify the rule or to store metadata. It is possible to lookup or delete strings based on labels. Labels are not required to be unique, multiple rules can have overlapping or identical labels." + description: "Labels is a list of optional strings which can be used to\nre-identify the rule or to store metadata. It is possible to lookup\nor delete strings based on labels. Labels are not required to be\nunique, multiple rules can have overlapping or identical labels." items: description: "Label is the Cilium's representation of a container label." properties: @@ -1888,18 +1903,18 @@ spec: type: "object" type: "array" nodeSelector: - description: "NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies." + description: "NodeSelector selects all nodes which should be subject to this rule.\nEndpointSelector and NodeSelector cannot be both empty and are mutually\nexclusive. Can only be used in CiliumClusterwideNetworkPolicies." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1907,7 +1922,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1924,14 +1939,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "object" specs: description: "Specs is a list of desired Cilium specific rule specification." items: - description: "Rule is a policy rule which must be applied to all endpoints which match the labels contained in the endpointSelector \n Each rule is split into an ingress section which contains all rules applicable at ingress, and an egress section applicable at egress. For rule types such as `L4Rule` and `CIDR` which can be applied at both ingress and egress, both ingress and egress side have to either specifically allow the connection or one side has to be omitted. \n Either ingress, egress, or both can be provided. If both ingress and egress are omitted, the rule has no effect." + description: "Rule is a policy rule which must be applied to all endpoints which match the\nlabels contained in the endpointSelector\n\nEach rule is split into an ingress section which contains all rules\napplicable at ingress, and an egress section applicable at egress. For rule\ntypes such as `L4Rule` and `CIDR` which can be applied at both ingress and\negress, both ingress and egress side have to either specifically allow the\nconnection or one side has to be omitted.\n\nEither ingress, egress, or both can be provided. If both ingress and egress\nare omitted, the rule has no effect." oneOf: - properties: endpointSelector: {} @@ -1943,12 +1959,12 @@ spec: - "nodeSelector" properties: description: - description: "Description is a free form string, it can be used by the creator of the rule to store human readable explanation of the purpose of this rule. Rules cannot be identified by comment." + description: "Description is a free form string, it can be used by the creator of\nthe rule to store human readable explanation of the purpose of this\nrule. Rules cannot be identified by comment." type: "string" egress: - description: "Egress is a list of EgressRule which are enforced at egress. If omitted or empty, this rule does not apply at egress." + description: "Egress is a list of EgressRule which are enforced at egress.\nIf omitted or empty, this rule does not apply at egress." items: - description: "EgressRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. \n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule." + description: "EgressRule contains all rule types which can be applied at egress, i.e.\nnetwork traffic that originates inside the endpoint and exits the endpoint\nselected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members of the structure are specified, then all members\n must match in order for the rule to take effect. The exception to this\n rule is the ToRequires member; the effects of any Requires field in any\n rule will apply to all other rules as well.\n\n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are\n mutually exclusive. Only one of these members may be present within an\n individual rule." properties: authentication: description: "Authentication is the required authentication type for the allowed traffic, if any." @@ -1964,7 +1980,7 @@ spec: - "mode" type: "object" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to connect to. \n Example: Any endpoint with the label \"app=httpd\" is allowed to initiate type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is allowed to connect to.\n\nExample:\nAny endpoint with the label \"app=httpd\" is allowed to initiate\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -1975,7 +1991,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -1984,7 +2000,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -1995,16 +2011,16 @@ spec: type: "object" type: "array" toCIDR: - description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24" + description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections. Only connections destined for\noutside of the cluster and not targeting the host will be subject\nto CIDR rules. This will match on the destination IP address of\noutgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet\nwith no ExcludeCIDRs is equivalent. Overlaps are allowed between\nToCIDR and ToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" toCIDRSet: - description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." + description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections to in addition to connections\nwhich are allowed via ToEndpoints, along with a list of subnets contained\nwithin their corresponding IP block to which traffic should not be\nallowed. This will match on the destination IP address of outgoing\nconnections. Adding a prefix into ToCIDR or into ToCIDRSet with no\nExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and\nToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -2020,34 +2036,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" toEndpoints: - description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. \n Example: Any endpoint with the label \"role=frontend\" can communicate with any endpoint carrying the label \"role=backend\"." + description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to\nwhich the endpoints subject to the rule are allowed to communicate.\n\nExample:\nAny endpoint with the label \"role=frontend\" can communicate with any\nendpoint carrying the label \"role=backend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2055,7 +2071,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2072,14 +2088,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toEntities: - description: "ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`." + description: "ToEntities is a list of special entities to which the endpoint subject\nto the rule is allowed to initiate connections. Supported entities are\n`world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`,\n`health`,`unmanaged` and `all`." items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -2095,7 +2112,7 @@ spec: type: "string" type: "array" toFQDNs: - description: "ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result from DNS resolution of `ToFQDN.MatchName`s are added to the same EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and L7 rules within this EgressRule will also apply to these IPs. The DNS -> IP mapping is re-resolved periodically from within the cilium-agent, and the IPs in the DNS response are effected in the policy for selected pods as-is (i.e. the list of IPs is not modified in any way). Note: An explicit rule to allow for DNS traffic is needed for the pods, as ToFQDN counts as an egress rule and will enforce egress policy when PolicyEnforcment=default. Note: If the resolved IPs are IPs within the kubernetes cluster, the ToFQDN rule will not apply to that IP. Note: ToFQDN cannot occur in the same policy as other To* rules." + description: "ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result\nfrom DNS resolution of `ToFQDN.MatchName`s are added to the same\nEgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and\nL7 rules within this EgressRule will also apply to these IPs.\nThe DNS -> IP mapping is re-resolved periodically from within the\ncilium-agent, and the IPs in the DNS response are effected in the policy\nfor selected pods as-is (i.e. the list of IPs is not modified in any way).\nNote: An explicit rule to allow for DNS traffic is needed for the pods, as\nToFQDN counts as an egress rule and will enforce egress policy when\nPolicyEnforcment=default.\nNote: If the resolved IPs are IPs within the kubernetes cluster, the\nToFQDN rule will not apply to that IP.\nNote: ToFQDN cannot occur in the same policy as other To* rules." items: oneOf: - properties: @@ -2108,19 +2125,19 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" type: "array" toGroups: - description: "ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "ToGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\ntoGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -2143,20 +2160,20 @@ spec: type: "object" type: "array" toNodes: - description: "ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate." + description: "ToNodes is a list of nodes identified by an\nEndpointSelector to which endpoints subject to the rule is allowed to communicate." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2164,7 +2181,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2181,29 +2198,30 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to connect to. \n Example: Any endpoint with the label \"role=frontend\" is allowed to initiate connections to destination port 8080/tcp" + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is allowed to\nconnect to.\n\nExample:\nAny endpoint with the label \"role=frontend\" is allowed to initiate\nconnections to destination port 8080/tcp" items: - description: "PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met." + description: "PortRule is a list of ports/protocol combinations with optional Layer 7\nrules which must be met." properties: listener: - description: "listener specifies the name of a custom Envoy listener to which this traffic should be redirected to." + description: "listener specifies the name of a custom Envoy listener to which this traffic should be\nredirected to." properties: envoyConfig: - description: "EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined." + description: "EnvoyConfig is a reference to the CEC or CCEC resource in which\nthe listener is defined." properties: kind: - description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed." + description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or\nCiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy,\nrespectively. The only case this is currently explicitly needed is when referring to a\nCiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener\nfrom a cluster scoped policy is not allowed." enum: - "CiliumEnvoyConfig" - "CiliumClusterwideEnvoyConfig" type: "string" name: - description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in." + description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where\nthe listener is defined in." minLength: 1 type: "string" required: @@ -2214,7 +2232,7 @@ spec: minLength: 1 type: "string" priority: - description: "Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent." + description: "Priority for this Listener that is used when multiple rules would apply different\nlisteners to a policy map entry. Behavior of this is implementation dependent." maximum: 100.0 minimum: 1.0 type: "integer" @@ -2223,28 +2241,28 @@ spec: - "name" type: "object" originatingTLS: - description: "OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint." + description: "OriginatingTLS is the TLS context for the connections originated by\nthe L7 proxy. For egress policy this specifies the client-side TLS\nparameters for the upstream connection originating from the L7 proxy\nto the remote destination. For ingress policy this specifies the\nclient-side TLS parameters for the connection from the L7 proxy to\nthe local endpoint." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -2261,11 +2279,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -2278,7 +2296,7 @@ spec: maxItems: 40 type: "array" rules: - description: "Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced." + description: "Rules is a list of additional port level rules which must be met in\norder for the PortRule to allow the traffic. If omitted or empty,\nno layer 7 rules are enforced." oneOf: - properties: http: {} @@ -2312,11 +2330,11 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" @@ -2324,15 +2342,15 @@ spec: http: description: "HTTP specific rules." items: - description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. \n All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986." + description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule does not have any\neffect.\n\nAll fields of this type are extended POSIX regex as defined by IEEE Std\n1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax)\nmatched against the path of an incoming request. Currently it can contain\ncharacters disallowed from the conventional \"path\" part of a URL as defined\nby RFC 3986." properties: headerMatches: - description: "HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match." + description: "HeaderMatches is a list of HTTP headers which must be\npresent and match against the given values. Mismatch field can be used\nto specify what to do when there is no match." items: - description: "HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough." + description: "HeaderMatch extends the HeaderValue for matching requirement of a\nnamed header field against an immediate string, a secret value, or\na regex. If none of the optional fields is present, then the\nheader value is not matched, only presence of the header is enough." properties: mismatch: - description: "Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log." + description: "Mismatch identifies what to do in case there is no match. The default is\nto drop the request. Otherwise the overall rule is still considered as\nmatching, but the mismatches are logged in the access log." enum: - "LOG" - "ADD" @@ -2344,63 +2362,63 @@ spec: minLength: 1 type: "string" secret: - description: "Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no \"Value\" specified, the match will fail." + description: "Secret refers to a secret that contains the value to be matched against.\nThe secret must only contain one entry. If the referred secret does not\nexist, and there is no \"Value\" specified, the match will fail." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" value: - description: "Value matches the exact value of the header. Can be specified either alone or together with \"Secret\"; will be used as the header value if the secret can not be found in the latter case." + description: "Value matches the exact value of the header. Can be specified either\nalone or together with \"Secret\"; will be used as the header value if the\nsecret can not be found in the latter case." type: "string" required: - "name" type: "object" type: "array" headers: - description: "Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present." + description: "Headers is a list of HTTP headers which must be present in the\nrequest. If omitted or empty, requests are allowed regardless of\nheaders present." items: type: "string" type: "array" host: - description: "Host is an extended POSIX regex matched against the host header of a request. Examples: \n - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\\.bar\\.com will only match the host foo.bar.com \n If omitted or empty, the value of the host header is ignored." + description: "Host is an extended POSIX regex matched against the host header of a\nrequest. Examples:\n\n- foo.bar.com will match the host fooXbar.com or foo-bar.com\n- foo\\.bar\\.com will only match the host foo.bar.com\n\nIf omitted or empty, the value of the host header is ignored." format: "idn-hostname" type: "string" method: - description: "Method is an extended POSIX regex matched against the method of a request, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ... \n If omitted or empty, all methods are allowed." + description: "Method is an extended POSIX regex matched against the method of a\nrequest, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ...\n\nIf omitted or empty, all methods are allowed." type: "string" path: - description: "Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986. \n If omitted or empty, all paths are all allowed." + description: "Path is an extended POSIX regex matched against the path of a\nrequest. Currently it can contain characters disallowed from the\nconventional \"path\" part of a URL as defined by RFC 3986.\n\nIf omitted or empty, all paths are all allowed." type: "string" type: "object" type: "array" kafka: description: "Kafka-specific rules." items: - description: "PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages." + description: "PortRule is a list of Kafka protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule will match all\nKafka messages." properties: apiKey: - description: "APIKey is a case-insensitive string matched against the key of a request, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys \n If omitted or empty, and if Role is not specified, then all keys are allowed." + description: "APIKey is a case-insensitive string matched against the key of a\nrequest, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al\nReference: https://kafka.apache.org/protocol#protocol_api_keys\n\nIf omitted or empty, and if Role is not specified, then all keys are allowed." type: "string" apiVersion: - description: "APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. \n If omitted or empty, all versions are allowed." + description: "APIVersion is the version matched against the api version of the\nKafka message. If set, it has to be a string representing a positive\ninteger.\n\nIf omitted or empty, all versions are allowed." type: "string" clientID: - description: "ClientID is the client identifier as provided in the request. \n From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. \n If omitted or empty, all client identifiers are allowed." + description: "ClientID is the client identifier as provided in the request.\n\nFrom Kafka protocol documentation:\nThis is a user supplied identifier for the client application. The\nuser can use any identifier they like and it will be used when\nlogging errors, monitoring aggregates, etc. For example, one might\nwant to monitor not just the requests per second overall, but the\nnumber coming from each client application (each of which could\nreside on multiple servers). This id acts as a logical grouping\nacross all requests from a particular client.\n\nIf omitted or empty, all client identifiers are allowed." type: "string" role: - description: "Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as \"produce\" or \"consume\". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. \n The following values are supported: - \"produce\": Allow producing to the topics specified in the rule - \"consume\": Allow consuming from the topics specified in the rule \n This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. \n If omitted or empty, and if APIKey is not specified, then all keys are allowed." + description: "Role is a case-insensitive string and describes a group of API keys\nnecessary to perform certain higher-level Kafka operations such as \"produce\"\nor \"consume\". A Role automatically expands into all APIKeys required\nto perform the specified higher-level operation.\n\nThe following values are supported:\n - \"produce\": Allow producing to the topics specified in the rule\n - \"consume\": Allow consuming from the topics specified in the rule\n\nThis field is incompatible with the APIKey field, i.e APIKey and Role\ncannot both be specified in the same rule.\n\nIf omitted or empty, and if APIKey is not specified, then all keys are\nallowed." enum: - "produce" - "consume" type: "string" topic: - description: "Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. \n This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. \n Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. \n If omitted or empty, all topics are allowed." + description: "Topic is the topic name contained in the message. If a Kafka request\ncontains multiple topics, then all topics must be allowed or the\nmessage will be rejected.\n\nThis constraint is ignored if the matched request message type\ndoesn't contain any topic. Maximum size of Topic can be 249\ncharacters as per recent Kafka spec and allowed characters are\na-z, A-Z, 0-9, -, . and _.\n\nOlder Kafka versions had longer topic lengths of 255, but in Kafka 0.10\nversion the length was changed from 255 to 249. For compatibility\nreasons we are using 255.\n\nIf omitted or empty, all topics are allowed." maxLength: 255 type: "string" type: "object" @@ -2410,7 +2428,7 @@ spec: items: additionalProperties: type: "string" - description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect." + description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as\nprotocol constraints. All fields are optional, if all fields are empty or\nmissing, the rule does not have any effect." type: "object" type: "array" l7proto: @@ -2418,33 +2436,33 @@ spec: type: "string" type: "object" serverNames: - description: "ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake." + description: "ServerNames is a list of allowed TLS SNI values. If not empty, then\nTLS must be present and one of the provided SNIs must be indicated in the\nTLS handshake." items: type: "string" type: "array" terminatingTLS: - description: "TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy." + description: "TerminatingTLS is the TLS context for the connection terminated by\nthe L7 proxy. For egress policy this specifies the server-side TLS\nparameters to be applied on the connections originated from the local\nendpoint and terminated by the L7 proxy. For ingress policy this specifies\nthe server-side TLS parameters to be applied on the connections\noriginated from a remote source and terminated by the L7 proxy." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -2452,20 +2470,20 @@ spec: type: "object" type: "array" toRequires: - description: "ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires any endpoint to which it communicates to also carry the label \"team=A\"." + description: "ToRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be able to connect to other\nendpoints. These additional constraints do no by itself grant access\nprivileges and must always be accompanied with at least one matching\nToEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires any endpoint to which it\ncommunicates to also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2473,7 +2491,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2490,12 +2508,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toServices: - description: "ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. \n Example: Any endpoint with the label \"app=backend-app\" is allowed to initiate connections to all cidrs backing the \"external-service\" service" + description: "ToServices is a list of services to which the endpoint subject\nto the rule is allowed to initiate connections.\nCurrently Cilium only supports toServices for K8s services without\nselectors.\n\nExample:\nAny endpoint with the label \"app=backend-app\" is allowed to\ninitiate connections to all cidrs backing the \"external-service\" service" items: description: "Service wraps around selectors for services" properties: @@ -2518,13 +2537,13 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2532,7 +2551,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2549,9 +2568,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" required: - "selector" type: "object" @@ -2560,12 +2580,12 @@ spec: type: "object" type: "array" egressDeny: - description: "EgressDeny is a list of EgressDenyRule which are enforced at egress. Any rule inserted here will be denied regardless of the allowed egress rules in the 'egress' field. If omitted or empty, this rule does not apply at egress." + description: "EgressDeny is a list of EgressDenyRule which are enforced at egress.\nAny rule inserted here will be denied regardless of the allowed egress\nrules in the 'egress' field.\nIf omitted or empty, this rule does not apply at egress." items: - description: "EgressDenyRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. \n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule." + description: "EgressDenyRule contains all rule types which can be applied at egress, i.e.\nnetwork traffic that originates inside the endpoint and exits the endpoint\nselected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members of the structure are specified, then all members\n must match in order for the rule to take effect. The exception to this\n rule is the ToRequires member; the effects of any Requires field in any\n rule will apply to all other rules as well.\n\n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are\n mutually exclusive. Only one of these members may be present within an\n individual rule." properties: icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to connect to. \n Example: Any endpoint with the label \"app=httpd\" is not allowed to initiate type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is not allowed to connect to.\n\nExample:\nAny endpoint with the label \"app=httpd\" is not allowed to initiate\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -2576,7 +2596,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -2585,7 +2605,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -2596,16 +2616,16 @@ spec: type: "object" type: "array" toCIDR: - description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24" + description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections. Only connections destined for\noutside of the cluster and not targeting the host will be subject\nto CIDR rules. This will match on the destination IP address of\noutgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet\nwith no ExcludeCIDRs is equivalent. Overlaps are allowed between\nToCIDR and ToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" toCIDRSet: - description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." + description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections to in addition to connections\nwhich are allowed via ToEndpoints, along with a list of subnets contained\nwithin their corresponding IP block to which traffic should not be\nallowed. This will match on the destination IP address of outgoing\nconnections. Adding a prefix into ToCIDR or into ToCIDRSet with no\nExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and\nToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -2621,34 +2641,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" toEndpoints: - description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. \n Example: Any endpoint with the label \"role=frontend\" can communicate with any endpoint carrying the label \"role=backend\"." + description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to\nwhich the endpoints subject to the rule are allowed to communicate.\n\nExample:\nAny endpoint with the label \"role=frontend\" can communicate with any\nendpoint carrying the label \"role=backend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2656,7 +2676,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2673,14 +2693,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toEntities: - description: "ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`." + description: "ToEntities is a list of special entities to which the endpoint subject\nto the rule is allowed to initiate connections. Supported entities are\n`world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`,\n`health`,`unmanaged` and `all`." items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -2696,9 +2717,9 @@ spec: type: "string" type: "array" toGroups: - description: "ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "ToGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\ntoGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -2721,20 +2742,20 @@ spec: type: "object" type: "array" toNodes: - description: "ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate." + description: "ToNodes is a list of nodes identified by an\nEndpointSelector to which endpoints subject to the rule is allowed to communicate." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2742,7 +2763,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2759,14 +2780,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to connect to. \n Example: Any endpoint with the label \"role=frontend\" is not allowed to initiate connections to destination port 8080/tcp" + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is not allowed to connect\nto.\n\nExample:\nAny endpoint with the label \"role=frontend\" is not allowed to initiate\nconnections to destination port 8080/tcp" items: - description: "PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies." + description: "PortDenyRule is a list of ports/protocol that should be used for deny\npolicies. This structure lacks the L7Rules since it's not supported in deny\npolicies." properties: ports: description: "Ports is a list of L4 port/protocol" @@ -2780,11 +2802,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -2798,20 +2820,20 @@ spec: type: "object" type: "array" toRequires: - description: "ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires any endpoint to which it communicates to also carry the label \"team=A\"." + description: "ToRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be able to connect to other\nendpoints. These additional constraints do no by itself grant access\nprivileges and must always be accompanied with at least one matching\nToEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires any endpoint to which it\ncommunicates to also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2819,7 +2841,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2836,12 +2858,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toServices: - description: "ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. \n Example: Any endpoint with the label \"app=backend-app\" is allowed to initiate connections to all cidrs backing the \"external-service\" service" + description: "ToServices is a list of services to which the endpoint subject\nto the rule is allowed to initiate connections.\nCurrently Cilium only supports toServices for K8s services without\nselectors.\n\nExample:\nAny endpoint with the label \"app=backend-app\" is allowed to\ninitiate connections to all cidrs backing the \"external-service\" service" items: description: "Service wraps around selectors for services" properties: @@ -2864,13 +2887,13 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2878,7 +2901,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2895,9 +2918,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" required: - "selector" type: "object" @@ -2906,28 +2930,28 @@ spec: type: "object" type: "array" enableDefaultDeny: - description: "EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. \n If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. \n If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. \n This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode." + description: "EnableDefaultDeny determines whether this policy configures the\nsubject endpoint(s) to have a default deny mode. If enabled,\nthis causes all traffic not explicitly allowed by a network policy\nto be dropped.\n\nIf not specified, the default is true for each traffic direction\nthat has rules, and false otherwise. For example, if a policy\nonly has Ingress or IngressDeny rules, then the default for\ningress is true and egress is false.\n\nIf multiple policies apply to an endpoint, that endpoint's default deny\nwill be enabled if any policy requests it.\n\nThis is useful for creating broad-based network policies that will not\ncause endpoints to enter default-deny mode." properties: egress: - description: "Whether or not the endpoint should have a default-deny rule applied to egress traffic." + description: "Whether or not the endpoint should have a default-deny rule applied\nto egress traffic." type: "boolean" ingress: - description: "Whether or not the endpoint should have a default-deny rule applied to ingress traffic." + description: "Whether or not the endpoint should have a default-deny rule applied\nto ingress traffic." type: "boolean" type: "object" endpointSelector: - description: "EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive." + description: "EndpointSelector selects all endpoints which should be subject to\nthis rule. EndpointSelector and NodeSelector cannot be both empty and\nare mutually exclusive." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2935,7 +2959,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2952,13 +2976,14 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" ingress: - description: "Ingress is a list of IngressRule which are enforced at ingress. If omitted or empty, this rule does not apply at ingress." + description: "Ingress is a list of IngressRule which are enforced at ingress.\nIf omitted or empty, this rule does not apply at ingress." items: - description: "IngressRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. \n - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule." + description: "IngressRule contains all rule types which can be applied at ingress,\ni.e. network traffic that originates outside of the endpoint and\nis entering the endpoint selected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members are set, all of them need to match in order for\n the rule to take effect. The exception to this rule is FromRequires field;\n the effects of any Requires field in any rule will apply to all other\n rules as well.\n\n - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually\n exclusive. Only one of these members may be present within an individual\n rule." properties: authentication: description: "Authentication is the required authentication type for the allowed traffic, if any." @@ -2974,16 +2999,16 @@ spec: - "mode" type: "object" fromCIDR: - description: "FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.3.9.1" + description: "FromCIDR is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from. Only connections which\ndo *not* originate from the cluster or from the local host are subject\nto CIDR rules. In order to allow in-cluster connectivity, use the\nFromEndpoints field. This will match on the source IP address of\nincoming connections. Adding a prefix into FromCIDR or into\nFromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are\nallowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.3.9.1" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" fromCIDRSet: - description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." + description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from in addition to FromEndpoints,\nalong with a list of subnets contained within their corresponding IP block\nfrom which traffic should not be allowed.\nThis will match on the source IP address of incoming connections. Adding\na prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is\nequivalent. Overlaps are allowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -2999,34 +3024,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" fromEndpoints: - description: "FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. \n Example: Any endpoint with the label \"role=backend\" can be consumed by any endpoint carrying the label \"role=frontend\"." + description: "FromEndpoints is a list of endpoints identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule.\n\nExample:\nAny endpoint with the label \"role=backend\" can be consumed by any\nendpoint carrying the label \"role=frontend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3034,7 +3059,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3051,14 +3076,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromEntities: - description: "FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host`" + description: "FromEntities is a list of special entities which the endpoint subject\nto the rule is allowed to receive connections from. Supported entities are\n`world`, `cluster` and `host`" items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -3074,9 +3100,9 @@ spec: type: "string" type: "array" fromGroups: - description: "FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "FromGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\nFromGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -3099,20 +3125,20 @@ spec: type: "object" type: "array" fromNodes: - description: "FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule." + description: "FromNodes is a list of nodes identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3120,7 +3146,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3137,25 +3163,26 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromRequires: - description: "FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires consuming endpoint to also carry the label \"team=A\"." + description: "FromRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be reachable. These\nadditional constraints do no by itself grant access privileges and\nmust always be accompanied with at least one matching FromEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires consuming endpoint\nto also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3163,7 +3190,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3180,12 +3207,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can only accept incoming type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can only accept incoming\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -3196,7 +3224,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -3205,7 +3233,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -3216,24 +3244,24 @@ spec: type: "object" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can only accept incoming connections on port 80/tcp." + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can only accept incoming\nconnections on port 80/tcp." items: - description: "PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met." + description: "PortRule is a list of ports/protocol combinations with optional Layer 7\nrules which must be met." properties: listener: - description: "listener specifies the name of a custom Envoy listener to which this traffic should be redirected to." + description: "listener specifies the name of a custom Envoy listener to which this traffic should be\nredirected to." properties: envoyConfig: - description: "EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined." + description: "EnvoyConfig is a reference to the CEC or CCEC resource in which\nthe listener is defined." properties: kind: - description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed." + description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or\nCiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy,\nrespectively. The only case this is currently explicitly needed is when referring to a\nCiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener\nfrom a cluster scoped policy is not allowed." enum: - "CiliumEnvoyConfig" - "CiliumClusterwideEnvoyConfig" type: "string" name: - description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in." + description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where\nthe listener is defined in." minLength: 1 type: "string" required: @@ -3244,7 +3272,7 @@ spec: minLength: 1 type: "string" priority: - description: "Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent." + description: "Priority for this Listener that is used when multiple rules would apply different\nlisteners to a policy map entry. Behavior of this is implementation dependent." maximum: 100.0 minimum: 1.0 type: "integer" @@ -3253,28 +3281,28 @@ spec: - "name" type: "object" originatingTLS: - description: "OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint." + description: "OriginatingTLS is the TLS context for the connections originated by\nthe L7 proxy. For egress policy this specifies the client-side TLS\nparameters for the upstream connection originating from the L7 proxy\nto the remote destination. For ingress policy this specifies the\nclient-side TLS parameters for the connection from the L7 proxy to\nthe local endpoint." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -3291,11 +3319,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -3308,7 +3336,7 @@ spec: maxItems: 40 type: "array" rules: - description: "Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced." + description: "Rules is a list of additional port level rules which must be met in\norder for the PortRule to allow the traffic. If omitted or empty,\nno layer 7 rules are enforced." oneOf: - properties: http: {} @@ -3342,11 +3370,11 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" @@ -3354,15 +3382,15 @@ spec: http: description: "HTTP specific rules." items: - description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. \n All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986." + description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule does not have any\neffect.\n\nAll fields of this type are extended POSIX regex as defined by IEEE Std\n1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax)\nmatched against the path of an incoming request. Currently it can contain\ncharacters disallowed from the conventional \"path\" part of a URL as defined\nby RFC 3986." properties: headerMatches: - description: "HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match." + description: "HeaderMatches is a list of HTTP headers which must be\npresent and match against the given values. Mismatch field can be used\nto specify what to do when there is no match." items: - description: "HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough." + description: "HeaderMatch extends the HeaderValue for matching requirement of a\nnamed header field against an immediate string, a secret value, or\na regex. If none of the optional fields is present, then the\nheader value is not matched, only presence of the header is enough." properties: mismatch: - description: "Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log." + description: "Mismatch identifies what to do in case there is no match. The default is\nto drop the request. Otherwise the overall rule is still considered as\nmatching, but the mismatches are logged in the access log." enum: - "LOG" - "ADD" @@ -3374,63 +3402,63 @@ spec: minLength: 1 type: "string" secret: - description: "Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no \"Value\" specified, the match will fail." + description: "Secret refers to a secret that contains the value to be matched against.\nThe secret must only contain one entry. If the referred secret does not\nexist, and there is no \"Value\" specified, the match will fail." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" value: - description: "Value matches the exact value of the header. Can be specified either alone or together with \"Secret\"; will be used as the header value if the secret can not be found in the latter case." + description: "Value matches the exact value of the header. Can be specified either\nalone or together with \"Secret\"; will be used as the header value if the\nsecret can not be found in the latter case." type: "string" required: - "name" type: "object" type: "array" headers: - description: "Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present." + description: "Headers is a list of HTTP headers which must be present in the\nrequest. If omitted or empty, requests are allowed regardless of\nheaders present." items: type: "string" type: "array" host: - description: "Host is an extended POSIX regex matched against the host header of a request. Examples: \n - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\\.bar\\.com will only match the host foo.bar.com \n If omitted or empty, the value of the host header is ignored." + description: "Host is an extended POSIX regex matched against the host header of a\nrequest. Examples:\n\n- foo.bar.com will match the host fooXbar.com or foo-bar.com\n- foo\\.bar\\.com will only match the host foo.bar.com\n\nIf omitted or empty, the value of the host header is ignored." format: "idn-hostname" type: "string" method: - description: "Method is an extended POSIX regex matched against the method of a request, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ... \n If omitted or empty, all methods are allowed." + description: "Method is an extended POSIX regex matched against the method of a\nrequest, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ...\n\nIf omitted or empty, all methods are allowed." type: "string" path: - description: "Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986. \n If omitted or empty, all paths are all allowed." + description: "Path is an extended POSIX regex matched against the path of a\nrequest. Currently it can contain characters disallowed from the\nconventional \"path\" part of a URL as defined by RFC 3986.\n\nIf omitted or empty, all paths are all allowed." type: "string" type: "object" type: "array" kafka: description: "Kafka-specific rules." items: - description: "PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages." + description: "PortRule is a list of Kafka protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule will match all\nKafka messages." properties: apiKey: - description: "APIKey is a case-insensitive string matched against the key of a request, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys \n If omitted or empty, and if Role is not specified, then all keys are allowed." + description: "APIKey is a case-insensitive string matched against the key of a\nrequest, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al\nReference: https://kafka.apache.org/protocol#protocol_api_keys\n\nIf omitted or empty, and if Role is not specified, then all keys are allowed." type: "string" apiVersion: - description: "APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. \n If omitted or empty, all versions are allowed." + description: "APIVersion is the version matched against the api version of the\nKafka message. If set, it has to be a string representing a positive\ninteger.\n\nIf omitted or empty, all versions are allowed." type: "string" clientID: - description: "ClientID is the client identifier as provided in the request. \n From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. \n If omitted or empty, all client identifiers are allowed." + description: "ClientID is the client identifier as provided in the request.\n\nFrom Kafka protocol documentation:\nThis is a user supplied identifier for the client application. The\nuser can use any identifier they like and it will be used when\nlogging errors, monitoring aggregates, etc. For example, one might\nwant to monitor not just the requests per second overall, but the\nnumber coming from each client application (each of which could\nreside on multiple servers). This id acts as a logical grouping\nacross all requests from a particular client.\n\nIf omitted or empty, all client identifiers are allowed." type: "string" role: - description: "Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as \"produce\" or \"consume\". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. \n The following values are supported: - \"produce\": Allow producing to the topics specified in the rule - \"consume\": Allow consuming from the topics specified in the rule \n This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. \n If omitted or empty, and if APIKey is not specified, then all keys are allowed." + description: "Role is a case-insensitive string and describes a group of API keys\nnecessary to perform certain higher-level Kafka operations such as \"produce\"\nor \"consume\". A Role automatically expands into all APIKeys required\nto perform the specified higher-level operation.\n\nThe following values are supported:\n - \"produce\": Allow producing to the topics specified in the rule\n - \"consume\": Allow consuming from the topics specified in the rule\n\nThis field is incompatible with the APIKey field, i.e APIKey and Role\ncannot both be specified in the same rule.\n\nIf omitted or empty, and if APIKey is not specified, then all keys are\nallowed." enum: - "produce" - "consume" type: "string" topic: - description: "Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. \n This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. \n Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. \n If omitted or empty, all topics are allowed." + description: "Topic is the topic name contained in the message. If a Kafka request\ncontains multiple topics, then all topics must be allowed or the\nmessage will be rejected.\n\nThis constraint is ignored if the matched request message type\ndoesn't contain any topic. Maximum size of Topic can be 249\ncharacters as per recent Kafka spec and allowed characters are\na-z, A-Z, 0-9, -, . and _.\n\nOlder Kafka versions had longer topic lengths of 255, but in Kafka 0.10\nversion the length was changed from 255 to 249. For compatibility\nreasons we are using 255.\n\nIf omitted or empty, all topics are allowed." maxLength: 255 type: "string" type: "object" @@ -3440,7 +3468,7 @@ spec: items: additionalProperties: type: "string" - description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect." + description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as\nprotocol constraints. All fields are optional, if all fields are empty or\nmissing, the rule does not have any effect." type: "object" type: "array" l7proto: @@ -3448,33 +3476,33 @@ spec: type: "string" type: "object" serverNames: - description: "ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake." + description: "ServerNames is a list of allowed TLS SNI values. If not empty, then\nTLS must be present and one of the provided SNIs must be indicated in the\nTLS handshake." items: type: "string" type: "array" terminatingTLS: - description: "TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy." + description: "TerminatingTLS is the TLS context for the connection terminated by\nthe L7 proxy. For egress policy this specifies the server-side TLS\nparameters to be applied on the connections originated from the local\nendpoint and terminated by the L7 proxy. For ingress policy this specifies\nthe server-side TLS parameters to be applied on the connections\noriginated from a remote source and terminated by the L7 proxy." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -3484,21 +3512,21 @@ spec: type: "object" type: "array" ingressDeny: - description: "IngressDeny is a list of IngressDenyRule which are enforced at ingress. Any rule inserted here will be denied regardless of the allowed ingress rules in the 'ingress' field. If omitted or empty, this rule does not apply at ingress." + description: "IngressDeny is a list of IngressDenyRule which are enforced at ingress.\nAny rule inserted here will be denied regardless of the allowed ingress\nrules in the 'ingress' field.\nIf omitted or empty, this rule does not apply at ingress." items: - description: "IngressDenyRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. \n - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule." + description: "IngressDenyRule contains all rule types which can be applied at ingress,\ni.e. network traffic that originates outside of the endpoint and\nis entering the endpoint selected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members are set, all of them need to match in order for\n the rule to take effect. The exception to this rule is FromRequires field;\n the effects of any Requires field in any rule will apply to all other\n rules as well.\n\n - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually\n exclusive. Only one of these members may be present within an individual\n rule." properties: fromCIDR: - description: "FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.3.9.1" + description: "FromCIDR is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from. Only connections which\ndo *not* originate from the cluster or from the local host are subject\nto CIDR rules. In order to allow in-cluster connectivity, use the\nFromEndpoints field. This will match on the source IP address of\nincoming connections. Adding a prefix into FromCIDR or into\nFromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are\nallowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.3.9.1" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" fromCIDRSet: - description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." + description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from in addition to FromEndpoints,\nalong with a list of subnets contained within their corresponding IP block\nfrom which traffic should not be allowed.\nThis will match on the source IP address of incoming connections. Adding\na prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is\nequivalent. Overlaps are allowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -3514,34 +3542,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" fromEndpoints: - description: "FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. \n Example: Any endpoint with the label \"role=backend\" can be consumed by any endpoint carrying the label \"role=frontend\"." + description: "FromEndpoints is a list of endpoints identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule.\n\nExample:\nAny endpoint with the label \"role=backend\" can be consumed by any\nendpoint carrying the label \"role=frontend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3549,7 +3577,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3566,14 +3594,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromEntities: - description: "FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host`" + description: "FromEntities is a list of special entities which the endpoint subject\nto the rule is allowed to receive connections from. Supported entities are\n`world`, `cluster` and `host`" items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -3589,9 +3618,9 @@ spec: type: "string" type: "array" fromGroups: - description: "FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "FromGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\nFromGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -3614,20 +3643,20 @@ spec: type: "object" type: "array" fromNodes: - description: "FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule." + description: "FromNodes is a list of nodes identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3635,7 +3664,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3652,25 +3681,26 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromRequires: - description: "FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires consuming endpoint to also carry the label \"team=A\"." + description: "FromRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be reachable. These\nadditional constraints do no by itself grant access privileges and\nmust always be accompanied with at least one matching FromEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires consuming endpoint\nto also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3678,7 +3708,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3695,12 +3725,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can not accept incoming type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is not allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can not accept incoming\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -3711,7 +3742,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -3720,7 +3751,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -3731,9 +3762,9 @@ spec: type: "object" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can not accept incoming connections on port 80/tcp." + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is not allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can not accept incoming\nconnections on port 80/tcp." items: - description: "PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies." + description: "PortDenyRule is a list of ports/protocol that should be used for deny\npolicies. This structure lacks the L7Rules since it's not supported in deny\npolicies." properties: ports: description: "Ports is a list of L4 port/protocol" @@ -3747,11 +3778,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -3767,7 +3798,7 @@ spec: type: "object" type: "array" labels: - description: "Labels is a list of optional strings which can be used to re-identify the rule or to store metadata. It is possible to lookup or delete strings based on labels. Labels are not required to be unique, multiple rules can have overlapping or identical labels." + description: "Labels is a list of optional strings which can be used to\nre-identify the rule or to store metadata. It is possible to lookup\nor delete strings based on labels. Labels are not required to be\nunique, multiple rules can have overlapping or identical labels." items: description: "Label is the Cilium's representation of a container label." properties: @@ -3783,18 +3814,18 @@ spec: type: "object" type: "array" nodeSelector: - description: "NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies." + description: "NodeSelector selects all nodes which should be subject to this rule.\nEndpointSelector and NodeSelector cannot be both empty and are mutually\nexclusive. Can only be used in CiliumClusterwideNetworkPolicies." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3802,7 +3833,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3819,13 +3850,14 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "object" type: "array" status: - description: "Status is the status of the Cilium policy rule. \n The reason this field exists in this structure is due a bug in the k8s code-generator that doesn't create a `UpdateStatus` method because the field does not exist in the structure." + description: "Status is the status of the Cilium policy rule.\n\nThe reason this field exists in this structure is due a bug in the k8s\ncode-generator that doesn't create a `UpdateStatus` method because the\nfield does not exist in the structure." properties: conditions: items: @@ -3856,32 +3888,32 @@ spec: x-kubernetes-list-type: "map" derivativePolicies: additionalProperties: - description: "CiliumNetworkPolicyNodeStatus is the status of a Cilium policy rule for a specific node." + description: "CiliumNetworkPolicyNodeStatus is the status of a Cilium policy rule for a\nspecific node." properties: annotations: additionalProperties: type: "string" - description: "Annotations corresponds to the Annotations in the ObjectMeta of the CNP that have been realized on the node for CNP. That is, if a CNP has been imported and has been assigned annotation X=Y by the user, Annotations in CiliumNetworkPolicyNodeStatus will be X=Y once the CNP that was imported corresponding to Annotation X=Y has been realized on the node." + description: "Annotations corresponds to the Annotations in the ObjectMeta of the CNP\nthat have been realized on the node for CNP. That is, if a CNP has been\nimported and has been assigned annotation X=Y by the user,\nAnnotations in CiliumNetworkPolicyNodeStatus will be X=Y once the\nCNP that was imported corresponding to Annotation X=Y has been realized on\nthe node." type: "object" enforcing: - description: "Enforcing is set to true once all endpoints present at the time the policy has been imported are enforcing this policy." + description: "Enforcing is set to true once all endpoints present at the time the\npolicy has been imported are enforcing this policy." type: "boolean" error: - description: "Error describes any error that occurred when parsing or importing the policy, or realizing the policy for the endpoints to which it applies on the node." + description: "Error describes any error that occurred when parsing or importing the\npolicy, or realizing the policy for the endpoints to which it applies\non the node." type: "string" lastUpdated: description: "LastUpdated contains the last time this status was updated" format: "date-time" type: "string" localPolicyRevision: - description: "Revision is the policy revision of the repository which first implemented this policy." + description: "Revision is the policy revision of the repository which first implemented\nthis policy." format: "int64" type: "integer" ok: - description: "OK is true when the policy has been parsed and imported successfully into the in-memory policy repository on the node." + description: "OK is true when the policy has been parsed and imported successfully\ninto the in-memory policy repository on the node." type: "boolean" type: "object" - description: "DerivativePolicies is the status of all policies derived from the Cilium policy" + description: "DerivativePolicies is the status of all policies derived from the Cilium\npolicy" type: "object" type: "object" required: @@ -3891,9 +3923,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumegressgatewaypolicies.yaml b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumegressgatewaypolicies.yaml index d6632bc8f..418c90255 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumegressgatewaypolicies.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumegressgatewaypolicies.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumegressgatewaypolicies.cilium.io" spec: group: "cilium.io" @@ -27,17 +27,17 @@ spec: openAPIV3Schema: properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" spec: properties: destinationCIDRs: - description: "DestinationCIDRs is a list of destination CIDRs for destination IP addresses. If a destination IP matches any one CIDR, it will be selected." + description: "DestinationCIDRs is a list of destination CIDRs for destination IP addresses.\nIf a destination IP matches any one CIDR, it will be selected." items: pattern: "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\/([0-9]|[1-2][0-9]|3[0-2])$" type: "string" @@ -46,25 +46,25 @@ spec: description: "EgressGateway is the gateway node responsible for SNATing traffic." properties: egressIP: - description: "EgressIP is the source IP address that the egress traffic is SNATed with. \n Example: When set to \"192.168.1.100\", matching egress traffic will be redirected to the node matching the NodeSelector field and SNATed with IP address 192.168.1.100. \n When none of the Interface or EgressIP fields is specified, the policy will use the first IPv4 assigned to the interface with the default route." + description: "EgressIP is the source IP address that the egress traffic is SNATed\nwith.\n\nExample:\nWhen set to \"192.168.1.100\", matching egress traffic will be\nredirected to the node matching the NodeSelector field and SNATed\nwith IP address 192.168.1.100.\n\nWhen none of the Interface or EgressIP fields is specified, the\npolicy will use the first IPv4 assigned to the interface with the\ndefault route." format: "ipv4" type: "string" interface: - description: "Interface is the network interface to which the egress IP address that the traffic is SNATed with is assigned. \n Example: When set to \"eth1\", matching egress traffic will be redirected to the node matching the NodeSelector field and SNATed with the first IPv4 address assigned to the eth1 interface. \n When none of the Interface or EgressIP fields is specified, the policy will use the first IPv4 assigned to the interface with the default route." + description: "Interface is the network interface to which the egress IP address\nthat the traffic is SNATed with is assigned.\n\nExample:\nWhen set to \"eth1\", matching egress traffic will be redirected to the\nnode matching the NodeSelector field and SNATed with the first IPv4\naddress assigned to the eth1 interface.\n\nWhen none of the Interface or EgressIP fields is specified, the\npolicy will use the first IPv4 assigned to the interface with the\ndefault route." type: "string" nodeSelector: - description: "This is a label selector which selects the node that should act as egress gateway for the given policy. In case multiple nodes are selected, only the first one in the lexical ordering over the node names will be used. This field follows standard label selector semantics." + description: "This is a label selector which selects the node that should act as\negress gateway for the given policy.\nIn case multiple nodes are selected, only the first one in the\nlexical ordering over the node names will be used.\nThis field follows standard label selector semantics." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -72,7 +72,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -89,35 +89,36 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" required: - "nodeSelector" type: "object" excludedCIDRs: - description: "ExcludedCIDRs is a list of destination CIDRs that will be excluded from the egress gateway redirection and SNAT logic. Should be a subset of destinationCIDRs otherwise it will not have any effect." + description: "ExcludedCIDRs is a list of destination CIDRs that will be excluded\nfrom the egress gateway redirection and SNAT logic.\nShould be a subset of destinationCIDRs otherwise it will not have any\neffect." items: pattern: "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\/([0-9]|[1-2][0-9]|3[0-2])$" type: "string" type: "array" selectors: - description: "Egress represents a list of rules by which egress traffic is filtered from the source pods." + description: "Egress represents a list of rules by which egress traffic is\nfiltered from the source pods." items: properties: namespaceSelector: - description: "Selects Namespaces using cluster-scoped labels. This field follows standard label selector semantics; if present but empty, it selects all namespaces." + description: "Selects Namespaces using cluster-scoped labels. This field follows standard label\nselector semantics; if present but empty, it selects all namespaces." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -125,7 +126,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -142,22 +143,23 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" podSelector: - description: "This is a label selector which selects Pods. This field follows standard label selector semantics; if present but empty, it selects all pods." + description: "This is a label selector which selects Pods. This field follows standard label\nselector semantics; if present but empty, it selects all pods." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -165,7 +167,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -182,9 +184,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "object" type: "array" required: @@ -198,9 +201,3 @@ spec: served: true storage: true subresources: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumendpoints.yaml b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumendpoints.yaml index 1e35725c5..c67178113 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumendpoints.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumendpoints.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumendpoints.cilium.io" spec: group: "cilium.io" @@ -56,10 +56,10 @@ spec: description: "CiliumEndpoint is the status of a Cilium policy rule." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -78,11 +78,11 @@ spec: description: "Retry on error" type: "boolean" error-retry-base: - description: "Base error retry back-off time Format: duration" + description: "Base error retry back-off time\nFormat: duration" format: "int64" type: "integer" interval: - description: "Regular synchronization interval Format: duration" + description: "Regular synchronization interval\nFormat: duration" format: "int64" type: "integer" type: "object" @@ -117,11 +117,11 @@ spec: description: "Encryption is the encryption configuration of the node" properties: key: - description: "Key is the index to the key to use for encryption or 0 if encryption is disabled." + description: "Key is the index to the key to use for encryption or 0 if encryption is\ndisabled." type: "integer" type: "object" external-identifiers: - description: "ExternalIdentifiers is a set of identifiers to identify the endpoint apart from the pod name. This includes container runtime IDs." + description: "ExternalIdentifiers is a set of identifiers to identify the endpoint\napart from the pod name. This includes container runtime IDs." properties: cni-attachment-id: description: "ID assigned to this attachment by container runtime" @@ -184,10 +184,10 @@ spec: log: description: "Log is the list of the last few warning and error log entries" items: - description: "EndpointStatusChange Indication of a change of status \n swagger:model EndpointStatusChange" + description: "EndpointStatusChange Indication of a change of status\n\nswagger:model EndpointStatusChange" properties: code: - description: "Code indicate type of status change Enum: [ok failed]" + description: "Code indicate type of status change\nEnum: [ok failed]" type: "string" message: description: "Status message" @@ -201,9 +201,9 @@ spec: type: "object" type: "array" named-ports: - description: "NamedPorts List of named Layer 4 port and protocol pairs which will be used in Network Policy specs. \n swagger:model NamedPorts" + description: "NamedPorts List of named Layer 4 port and protocol pairs which will be used in Network\nPolicy specs.\n\nswagger:model NamedPorts" items: - description: "Port Layer 4 port / protocol pair \n swagger:model Port" + description: "Port Layer 4 port / protocol pair\n\nswagger:model Port" properties: name: description: "Optional layer 4 port name" @@ -212,7 +212,7 @@ spec: description: "Layer 4 port number" type: "integer" protocol: - description: "Layer 4 protocol Enum: [TCP UDP SCTP ICMP ICMPV6 ANY]" + description: "Layer 4 protocol\nEnum: [TCP UDP SCTP ICMP ICMPV6 ANY]" type: "string" type: "object" type: "array" @@ -231,13 +231,13 @@ spec: type: "object" type: "array" node: - description: "NodeIP is the IP of the node the endpoint is running on. The IP must be reachable between nodes." + description: "NodeIP is the IP of the node the endpoint is running on. The IP must\nbe reachable between nodes." type: "string" required: - "addressing" type: "object" policy: - description: "EndpointPolicy represents the endpoint's policy by listing all allowed ingress and egress identities in combination with L4 port and protocol." + description: "EndpointPolicy represents the endpoint's policy by listing all allowed\ningress and egress identities in combination with L4 port and protocol." properties: egress: description: "EndpointPolicyDirection is the list of allowed identities per direction." @@ -261,7 +261,7 @@ spec: type: "object" type: "array" allowed: - description: "AllowedIdentityList is a list of IdentityTuples that species peers that are allowed." + description: "AllowedIdentityList is a list of IdentityTuples that species peers that are\nallowed." items: description: "IdentityTuple specifies a peer by identity, destination port and protocol." properties: @@ -279,7 +279,7 @@ spec: type: "object" type: "array" denied: - description: "DenyIdentityList is a list of IdentityTuples that species peers that are denied." + description: "DenyIdentityList is a list of IdentityTuples that species peers that are\ndenied." items: description: "IdentityTuple specifies a peer by identity, destination port and protocol." properties: @@ -344,7 +344,7 @@ spec: type: "object" type: "array" allowed: - description: "AllowedIdentityList is a list of IdentityTuples that species peers that are allowed." + description: "AllowedIdentityList is a list of IdentityTuples that species peers that are\nallowed." items: description: "IdentityTuple specifies a peer by identity, destination port and protocol." properties: @@ -362,7 +362,7 @@ spec: type: "object" type: "array" denied: - description: "DenyIdentityList is a list of IdentityTuples that species peers that are denied." + description: "DenyIdentityList is a list of IdentityTuples that species peers that are\ndenied." items: description: "IdentityTuple specifies a peer by identity, destination port and protocol." properties: @@ -429,9 +429,3 @@ spec: served: true storage: true subresources: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumenvoyconfigs.yaml b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumenvoyconfigs.yaml index 26eccf376..5701b575c 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumenvoyconfigs.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumenvoyconfigs.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumenvoyconfigs.cilium.io" spec: group: "cilium.io" @@ -27,27 +27,27 @@ spec: openAPIV3Schema: properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" spec: properties: backendServices: - description: "BackendServices specifies Kubernetes services whose backends are automatically synced to Envoy using EDS. Traffic for these services is not forwarded to an Envoy listener. This allows an Envoy listener load balance traffic to these backends while normal Cilium service load balancing takes care of balancing traffic for these services at the same time." + description: "BackendServices specifies Kubernetes services whose backends\nare automatically synced to Envoy using EDS. Traffic for these\nservices is not forwarded to an Envoy listener. This allows an\nEnvoy listener load balance traffic to these backends while\nnormal Cilium service load balancing takes care of balancing\ntraffic for these services at the same time." items: properties: name: - description: "Name is the name of a destination Kubernetes service that identifies traffic to be redirected." + description: "Name is the name of a destination Kubernetes service that identifies traffic\nto be redirected." type: "string" namespace: - description: "Namespace is the Kubernetes service namespace. In CiliumEnvoyConfig namespace defaults to the namespace of the CEC, In CiliumClusterwideEnvoyConfig namespace defaults to \"default\"." + description: "Namespace is the Kubernetes service namespace.\nIn CiliumEnvoyConfig namespace defaults to the namespace of the CEC,\nIn CiliumClusterwideEnvoyConfig namespace defaults to \"default\"." type: "string" number: - description: "Ports is a set of port numbers, which can be used for filtering in case of underlying is exposing multiple port numbers." + description: "Ports is a set of port numbers, which can be used for filtering in case of underlying\nis exposing multiple port numbers." items: type: "string" type: "array" @@ -56,18 +56,18 @@ spec: type: "object" type: "array" nodeSelector: - description: "NodeSelector is a label selector that determines to which nodes this configuration applies. If nil, then this config applies to all nodes." + description: "NodeSelector is a label selector that determines to which nodes\nthis configuration applies.\nIf nil, then this config applies to all nodes." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -75,7 +75,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -92,30 +92,31 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" resources: - description: "Envoy xDS resources, a list of the following Envoy resource types: type.googleapis.com/envoy.config.listener.v3.Listener, type.googleapis.com/envoy.config.route.v3.RouteConfiguration, type.googleapis.com/envoy.config.cluster.v3.Cluster, type.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment, and type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret." + description: "Envoy xDS resources, a list of the following Envoy resource types:\ntype.googleapis.com/envoy.config.listener.v3.Listener,\ntype.googleapis.com/envoy.config.route.v3.RouteConfiguration,\ntype.googleapis.com/envoy.config.cluster.v3.Cluster,\ntype.googleapis.com/envoy.config.endpoint.v3.ClusterLoadAssignment, and\ntype.googleapis.com/envoy.extensions.transport_sockets.tls.v3.Secret." items: type: "object" x-kubernetes-preserve-unknown-fields: true type: "array" services: - description: "Services specifies Kubernetes services for which traffic is forwarded to an Envoy listener for L7 load balancing. Backends of these services are automatically synced to Envoy usign EDS." + description: "Services specifies Kubernetes services for which traffic is\nforwarded to an Envoy listener for L7 load balancing. Backends\nof these services are automatically synced to Envoy usign EDS." items: properties: listener: - description: "Listener specifies the name of the Envoy listener the service traffic is redirected to. The listener must be specified in the Envoy 'resources' of the same CiliumEnvoyConfig. \n If omitted, the first listener specified in 'resources' is used." + description: "Listener specifies the name of the Envoy listener the\nservice traffic is redirected to. The listener must be\nspecified in the Envoy 'resources' of the same\nCiliumEnvoyConfig.\n\nIf omitted, the first listener specified in 'resources' is\nused." type: "string" name: - description: "Name is the name of a destination Kubernetes service that identifies traffic to be redirected." + description: "Name is the name of a destination Kubernetes service that identifies traffic\nto be redirected." type: "string" namespace: - description: "Namespace is the Kubernetes service namespace. In CiliumEnvoyConfig namespace this is overridden to the namespace of the CEC, In CiliumClusterwideEnvoyConfig namespace defaults to \"default\"." + description: "Namespace is the Kubernetes service namespace.\nIn CiliumEnvoyConfig namespace this is overridden to the namespace of the CEC,\nIn CiliumClusterwideEnvoyConfig namespace defaults to \"default\"." type: "string" ports: - description: "Ports is a set of service's frontend ports that should be redirected to the Envoy listener. By default all frontend ports of the service are redirected." + description: "Ports is a set of service's frontend ports that should be redirected to the Envoy\nlistener. By default all frontend ports of the service are redirected." items: type: "integer" type: "array" @@ -123,6 +124,8 @@ spec: - "name" type: "object" type: "array" + required: + - "resources" type: "object" required: - "metadata" @@ -130,9 +133,3 @@ spec: served: true storage: true subresources: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumexternalworkloads.yaml b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumexternalworkloads.yaml index da4ccfcfd..9727b9bf7 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumexternalworkloads.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumexternalworkloads.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumexternalworkloads.cilium.io" spec: group: "cilium.io" @@ -27,13 +27,13 @@ spec: name: "v2" schema: openAPIV3Schema: - description: "CiliumExternalWorkload is a Kubernetes Custom Resource that contains a specification for an external workload that can join the cluster. The name of the CRD is the FQDN of the external workload, and it needs to match the name in the workload registration. The labels on the CRD object are the labels that will be used to allocate a Cilium Identity for the external workload. If 'io.kubernetes.pod.namespace' or 'io.kubernetes.pod.name' labels are not explicitly specified, they will be defaulted to 'default' and , respectively. 'io.cilium.k8s.policy.cluster' will always be defined as the name of the current cluster, which defaults to \"default\"." + description: "CiliumExternalWorkload is a Kubernetes Custom Resource that\ncontains a specification for an external workload that can join the\ncluster. The name of the CRD is the FQDN of the external workload,\nand it needs to match the name in the workload registration. The\nlabels on the CRD object are the labels that will be used to\nallocate a Cilium Identity for the external workload. If\n'io.kubernetes.pod.namespace' or 'io.kubernetes.pod.name' labels\nare not explicitly specified, they will be defaulted to 'default'\nand , respectively. 'io.cilium.k8s.policy.cluster'\nwill always be defined as the name of the current cluster, which\ndefaults to \"default\"." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -41,16 +41,16 @@ spec: description: "Spec is the desired configuration of the external Cilium workload." properties: ipv4-alloc-cidr: - description: "IPv4AllocCIDR is the range of IPv4 addresses in the CIDR format that the external workload can use to allocate IP addresses for the tunnel device and the health endpoint." + description: "IPv4AllocCIDR is the range of IPv4 addresses in the CIDR format that the external workload can\nuse to allocate IP addresses for the tunnel device and the health endpoint." pattern: "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\/([0-9]|[1-2][0-9]|3[0-2])$" type: "string" ipv6-alloc-cidr: - description: "IPv6AllocCIDR is the range of IPv6 addresses in the CIDR format that the external workload can use to allocate IP addresses for the tunnel device and the health endpoint." + description: "IPv6AllocCIDR is the range of IPv6 addresses in the CIDR format that the external workload can\nuse to allocate IP addresses for the tunnel device and the health endpoint." pattern: "^s*((([0-9A-Fa-f]{1,4}:){7}(:|([0-9A-Fa-f]{1,4})))|(([0-9A-Fa-f]{1,4}:){6}:([0-9A-Fa-f]{1,4})?)|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){0,1}):([0-9A-Fa-f]{1,4})?))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){0,2}):([0-9A-Fa-f]{1,4})?))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){0,3}):([0-9A-Fa-f]{1,4})?))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){0,4}):([0-9A-Fa-f]{1,4})?))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){0,5}):([0-9A-Fa-f]{1,4})?))|(:(:|((:[0-9A-Fa-f]{1,4}){1,7}))))(%.+)?s*/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8])$" type: "string" type: "object" status: - description: "Status is the most recent status of the external Cilium workload. It is a read-only field." + description: "Status is the most recent status of the external Cilium workload.\nIt is a read-only field." properties: id: description: "ID is the numeric identity allocated for the external workload." @@ -67,9 +67,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumidentities.yaml b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumidentities.yaml index 35c9ef4fb..4fa67b29e 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumidentities.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumidentities.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumidentities.cilium.io" spec: group: "cilium.io" @@ -29,13 +29,13 @@ spec: name: "v2" schema: openAPIV3Schema: - description: "CiliumIdentity is a CRD that represents an identity managed by Cilium. It is intended as a backing store for identity allocation, acting as the global coordination backend, and can be used in place of a KVStore (such as etcd). The name of the CRD is the numeric identity and the labels on the CRD object are the kubernetes sourced labels seen by cilium. This is currently the only label source possible when running under kubernetes. Non-kubernetes labels are filtered but all labels, from all sources, are places in the SecurityLabels field. These also include the source and are used to define the identity. The labels under metav1.ObjectMeta can be used when searching for CiliumIdentity instances that include particular labels. This can be done with invocations such as: \n kubectl get ciliumid -l 'foo=bar'" + description: "CiliumIdentity is a CRD that represents an identity managed by Cilium.\nIt is intended as a backing store for identity allocation, acting as the\nglobal coordination backend, and can be used in place of a KVStore (such as\netcd).\nThe name of the CRD is the numeric identity and the labels on the CRD object\nare the kubernetes sourced labels seen by cilium. This is currently the\nonly label source possible when running under kubernetes. Non-kubernetes\nlabels are filtered but all labels, from all sources, are places in the\nSecurityLabels field. These also include the source and are used to define\nthe identity.\nThe labels under metav1.ObjectMeta can be used when searching for\nCiliumIdentity instances that include particular labels. This can be done\nwith invocations such as:\n\n\tkubectl get ciliumid -l 'foo=bar'" properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -52,9 +52,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumlocalredirectpolicies.yaml b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumlocalredirectpolicies.yaml index 88e699094..ffb93aebf 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumlocalredirectpolicies.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumlocalredirectpolicies.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumlocalredirectpolicies.cilium.io" spec: group: "cilium.io" @@ -25,13 +25,13 @@ spec: name: "v2" schema: openAPIV3Schema: - description: "CiliumLocalRedirectPolicy is a Kubernetes Custom Resource that contains a specification to redirect traffic locally within a node." + description: "CiliumLocalRedirectPolicy is a Kubernetes Custom Resource that contains a\nspecification to redirect traffic locally within a node." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -39,10 +39,10 @@ spec: description: "Spec is the desired behavior of the local redirect policy." properties: description: - description: "Description can be used by the creator of the policy to describe the purpose of this policy." + description: "Description can be used by the creator of the policy to describe the\npurpose of this policy." type: "string" redirectBackend: - description: "RedirectBackend specifies backend configuration to redirect traffic to. It can not be empty." + description: "RedirectBackend specifies backend configuration to redirect traffic to.\nIt can not be empty." properties: localEndpointSelector: description: "LocalEndpointSelector selects node local pod(s) where traffic is redirected to." @@ -50,13 +50,13 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -64,7 +64,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -81,16 +81,17 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" toPorts: - description: "ToPorts is a list of L4 ports with protocol of node local pod(s) where traffic is redirected to. When multiple ports are specified, the ports must be named." + description: "ToPorts is a list of L4 ports with protocol of node local pod(s) where traffic\nis redirected to.\nWhen multiple ports are specified, the ports must be named." items: description: "PortInfo specifies L4 port number and name along with the transport protocol" properties: name: - description: "Name is a port name, which must contain at least one [a-z], and may also contain [0-9] and '-' anywhere except adjacent to another '-' or in the beginning or the end." + description: "Name is a port name, which must contain at least one [a-z],\nand may also contain [0-9] and '-' anywhere except adjacent to another\n'-' or in the beginning or the end." pattern: "^([0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" port: @@ -98,7 +99,7 @@ spec: pattern: "^()([1-9]|[1-5]?[0-9]{2,4}|6[1-4][0-9]{3}|65[1-4][0-9]{2}|655[1-2][0-9]|6553[1-5])$" type: "string" protocol: - description: "Protocol is the L4 protocol. Accepted values: \"TCP\", \"UDP\"" + description: "Protocol is the L4 protocol.\nAccepted values: \"TCP\", \"UDP\"" enum: - "TCP" - "UDP" @@ -116,7 +117,7 @@ spec: - message: "redirectBackend is immutable" rule: "self == oldSelf" redirectFrontend: - description: "RedirectFrontend specifies frontend configuration to redirect traffic from. It can not be empty." + description: "RedirectFrontend specifies frontend configuration to redirect traffic from.\nIt can not be empty." oneOf: - properties: addressMatcher: {} @@ -128,19 +129,19 @@ spec: - "serviceMatcher" properties: addressMatcher: - description: "AddressMatcher is a tuple {IP, port, protocol} that matches traffic to be redirected." + description: "AddressMatcher is a tuple {IP, port, protocol} that matches traffic to be\nredirected." properties: ip: - description: "IP is a destination ip address for traffic to be redirected. \n Example: When it is set to \"169.254.169.254\", traffic destined to \"169.254.169.254\" is redirected." + description: "IP is a destination ip address for traffic to be redirected.\n\nExample:\nWhen it is set to \"169.254.169.254\", traffic destined to\n\"169.254.169.254\" is redirected." pattern: "((^\\s*((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))\\s*$)|(^\\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))(%.+)?\\s*$))" type: "string" toPorts: - description: "ToPorts is a list of destination L4 ports with protocol for traffic to be redirected. When multiple ports are specified, the ports must be named. \n Example: When set to Port: \"53\" and Protocol: UDP, traffic destined to port '53' with UDP protocol is redirected." + description: "ToPorts is a list of destination L4 ports with protocol for traffic\nto be redirected.\nWhen multiple ports are specified, the ports must be named.\n\nExample:\nWhen set to Port: \"53\" and Protocol: UDP, traffic destined to port '53'\nwith UDP protocol is redirected." items: description: "PortInfo specifies L4 port number and name along with the transport protocol" properties: name: - description: "Name is a port name, which must contain at least one [a-z], and may also contain [0-9] and '-' anywhere except adjacent to another '-' or in the beginning or the end." + description: "Name is a port name, which must contain at least one [a-z],\nand may also contain [0-9] and '-' anywhere except adjacent to another\n'-' or in the beginning or the end." pattern: "^([0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" port: @@ -148,7 +149,7 @@ spec: pattern: "^()([1-9]|[1-5]?[0-9]{2,4}|6[1-4][0-9]{3}|65[1-4][0-9]{2}|655[1-2][0-9]|6553[1-5])$" type: "string" protocol: - description: "Protocol is the L4 protocol. Accepted values: \"TCP\", \"UDP\"" + description: "Protocol is the L4 protocol.\nAccepted values: \"TCP\", \"UDP\"" enum: - "TCP" - "UDP" @@ -163,21 +164,21 @@ spec: - "toPorts" type: "object" serviceMatcher: - description: "ServiceMatcher specifies Kubernetes service and port that matches traffic to be redirected." + description: "ServiceMatcher specifies Kubernetes service and port that matches\ntraffic to be redirected." properties: namespace: - description: "Namespace is the Kubernetes service namespace. The service namespace must match the namespace of the parent Local Redirect Policy. For Cluster-wide Local Redirect Policy, this can be any namespace." + description: "Namespace is the Kubernetes service namespace.\nThe service namespace must match the namespace of the parent Local\nRedirect Policy. For Cluster-wide Local Redirect Policy, this\ncan be any namespace." type: "string" serviceName: - description: "Name is the name of a destination Kubernetes service that identifies traffic to be redirected. The service type needs to be ClusterIP. \n Example: When this field is populated with 'serviceName:myService', all the traffic destined to the cluster IP of this service at the (specified) service port(s) will be redirected." + description: "Name is the name of a destination Kubernetes service that identifies traffic\nto be redirected.\nThe service type needs to be ClusterIP.\n\nExample:\nWhen this field is populated with 'serviceName:myService', all the traffic\ndestined to the cluster IP of this service at the (specified)\nservice port(s) will be redirected." type: "string" toPorts: - description: "ToPorts is a list of destination service L4 ports with protocol for traffic to be redirected. If not specified, traffic for all the service ports will be redirected. When multiple ports are specified, the ports must be named." + description: "ToPorts is a list of destination service L4 ports with protocol for\ntraffic to be redirected. If not specified, traffic for all the service\nports will be redirected.\nWhen multiple ports are specified, the ports must be named." items: description: "PortInfo specifies L4 port number and name along with the transport protocol" properties: name: - description: "Name is a port name, which must contain at least one [a-z], and may also contain [0-9] and '-' anywhere except adjacent to another '-' or in the beginning or the end." + description: "Name is a port name, which must contain at least one [a-z],\nand may also contain [0-9] and '-' anywhere except adjacent to another\n'-' or in the beginning or the end." pattern: "^([0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" port: @@ -185,7 +186,7 @@ spec: pattern: "^()([1-9]|[1-5]?[0-9]{2,4}|6[1-4][0-9]{3}|65[1-4][0-9]{2}|655[1-2][0-9]|6553[1-5])$" type: "string" protocol: - description: "Protocol is the L4 protocol. Accepted values: \"TCP\", \"UDP\"" + description: "Protocol is the L4 protocol.\nAccepted values: \"TCP\", \"UDP\"" enum: - "TCP" - "UDP" @@ -205,7 +206,7 @@ spec: rule: "self == oldSelf" skipRedirectFromBackend: default: false - description: "SkipRedirectFromBackend indicates whether traffic matching RedirectFrontend from RedirectBackend should skip redirection, and hence the traffic will be forwarded as-is. \n The default is false which means traffic matching RedirectFrontend will get redirected from all pods, including the RedirectBackend(s). \n Example: If RedirectFrontend is configured to \"169.254.169.254:80\" as the traffic that needs to be redirected to backends selected by RedirectBackend, if SkipRedirectFromBackend is set to true, traffic going to \"169.254.169.254:80\" from such backends will not be redirected back to the backends. Instead, the matched traffic from the backends will be forwarded to the original destination \"169.254.169.254:80\"." + description: "SkipRedirectFromBackend indicates whether traffic matching RedirectFrontend\nfrom RedirectBackend should skip redirection, and hence the traffic will\nbe forwarded as-is.\n\nThe default is false which means traffic matching RedirectFrontend will\nget redirected from all pods, including the RedirectBackend(s).\n\nExample: If RedirectFrontend is configured to \"169.254.169.254:80\" as the traffic\nthat needs to be redirected to backends selected by RedirectBackend, if\nSkipRedirectFromBackend is set to true, traffic going to \"169.254.169.254:80\"\nfrom such backends will not be redirected back to the backends. Instead,\nthe matched traffic from the backends will be forwarded to the original\ndestination \"169.254.169.254:80\"." type: "boolean" x-kubernetes-validations: - message: "skipRedirectFromBackend is immutable" @@ -215,10 +216,9 @@ spec: - "redirectFrontend" type: "object" status: - description: "Status is the most recent status of the local redirect policy. It is a read-only field." + description: "Status is the most recent status of the local redirect policy.\nIt is a read-only field." properties: ok: - description: "TODO Define status(aditi)" type: "boolean" type: "object" required: @@ -227,9 +227,3 @@ spec: served: true storage: true subresources: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumnetworkpolicies.yaml b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumnetworkpolicies.yaml index d5fe4cde0..2c6dd5bf1 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumnetworkpolicies.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumnetworkpolicies.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumnetworkpolicies.cilium.io" spec: group: "cilium.io" @@ -29,13 +29,13 @@ spec: name: "v2" schema: openAPIV3Schema: - description: "CiliumNetworkPolicy is a Kubernetes third-party resource with an extended version of NetworkPolicy." + description: "CiliumNetworkPolicy is a Kubernetes third-party resource with an extended\nversion of NetworkPolicy." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -52,12 +52,12 @@ spec: - "nodeSelector" properties: description: - description: "Description is a free form string, it can be used by the creator of the rule to store human readable explanation of the purpose of this rule. Rules cannot be identified by comment." + description: "Description is a free form string, it can be used by the creator of\nthe rule to store human readable explanation of the purpose of this\nrule. Rules cannot be identified by comment." type: "string" egress: - description: "Egress is a list of EgressRule which are enforced at egress. If omitted or empty, this rule does not apply at egress." + description: "Egress is a list of EgressRule which are enforced at egress.\nIf omitted or empty, this rule does not apply at egress." items: - description: "EgressRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. \n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule." + description: "EgressRule contains all rule types which can be applied at egress, i.e.\nnetwork traffic that originates inside the endpoint and exits the endpoint\nselected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members of the structure are specified, then all members\n must match in order for the rule to take effect. The exception to this\n rule is the ToRequires member; the effects of any Requires field in any\n rule will apply to all other rules as well.\n\n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are\n mutually exclusive. Only one of these members may be present within an\n individual rule." properties: authentication: description: "Authentication is the required authentication type for the allowed traffic, if any." @@ -73,7 +73,7 @@ spec: - "mode" type: "object" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to connect to. \n Example: Any endpoint with the label \"app=httpd\" is allowed to initiate type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is allowed to connect to.\n\nExample:\nAny endpoint with the label \"app=httpd\" is allowed to initiate\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -84,7 +84,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -93,7 +93,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -104,16 +104,16 @@ spec: type: "object" type: "array" toCIDR: - description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24" + description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections. Only connections destined for\noutside of the cluster and not targeting the host will be subject\nto CIDR rules. This will match on the destination IP address of\noutgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet\nwith no ExcludeCIDRs is equivalent. Overlaps are allowed between\nToCIDR and ToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" toCIDRSet: - description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." + description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections to in addition to connections\nwhich are allowed via ToEndpoints, along with a list of subnets contained\nwithin their corresponding IP block to which traffic should not be\nallowed. This will match on the destination IP address of outgoing\nconnections. Adding a prefix into ToCIDR or into ToCIDRSet with no\nExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and\nToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -129,34 +129,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" toEndpoints: - description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. \n Example: Any endpoint with the label \"role=frontend\" can communicate with any endpoint carrying the label \"role=backend\"." + description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to\nwhich the endpoints subject to the rule are allowed to communicate.\n\nExample:\nAny endpoint with the label \"role=frontend\" can communicate with any\nendpoint carrying the label \"role=backend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -164,7 +164,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -181,14 +181,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toEntities: - description: "ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`." + description: "ToEntities is a list of special entities to which the endpoint subject\nto the rule is allowed to initiate connections. Supported entities are\n`world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`,\n`health`,`unmanaged` and `all`." items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -204,7 +205,7 @@ spec: type: "string" type: "array" toFQDNs: - description: "ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result from DNS resolution of `ToFQDN.MatchName`s are added to the same EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and L7 rules within this EgressRule will also apply to these IPs. The DNS -> IP mapping is re-resolved periodically from within the cilium-agent, and the IPs in the DNS response are effected in the policy for selected pods as-is (i.e. the list of IPs is not modified in any way). Note: An explicit rule to allow for DNS traffic is needed for the pods, as ToFQDN counts as an egress rule and will enforce egress policy when PolicyEnforcment=default. Note: If the resolved IPs are IPs within the kubernetes cluster, the ToFQDN rule will not apply to that IP. Note: ToFQDN cannot occur in the same policy as other To* rules." + description: "ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result\nfrom DNS resolution of `ToFQDN.MatchName`s are added to the same\nEgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and\nL7 rules within this EgressRule will also apply to these IPs.\nThe DNS -> IP mapping is re-resolved periodically from within the\ncilium-agent, and the IPs in the DNS response are effected in the policy\nfor selected pods as-is (i.e. the list of IPs is not modified in any way).\nNote: An explicit rule to allow for DNS traffic is needed for the pods, as\nToFQDN counts as an egress rule and will enforce egress policy when\nPolicyEnforcment=default.\nNote: If the resolved IPs are IPs within the kubernetes cluster, the\nToFQDN rule will not apply to that IP.\nNote: ToFQDN cannot occur in the same policy as other To* rules." items: oneOf: - properties: @@ -217,19 +218,19 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" type: "array" toGroups: - description: "ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "ToGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\ntoGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -252,20 +253,20 @@ spec: type: "object" type: "array" toNodes: - description: "ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate." + description: "ToNodes is a list of nodes identified by an\nEndpointSelector to which endpoints subject to the rule is allowed to communicate." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -273,7 +274,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -290,29 +291,30 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to connect to. \n Example: Any endpoint with the label \"role=frontend\" is allowed to initiate connections to destination port 8080/tcp" + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is allowed to\nconnect to.\n\nExample:\nAny endpoint with the label \"role=frontend\" is allowed to initiate\nconnections to destination port 8080/tcp" items: - description: "PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met." + description: "PortRule is a list of ports/protocol combinations with optional Layer 7\nrules which must be met." properties: listener: - description: "listener specifies the name of a custom Envoy listener to which this traffic should be redirected to." + description: "listener specifies the name of a custom Envoy listener to which this traffic should be\nredirected to." properties: envoyConfig: - description: "EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined." + description: "EnvoyConfig is a reference to the CEC or CCEC resource in which\nthe listener is defined." properties: kind: - description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed." + description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or\nCiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy,\nrespectively. The only case this is currently explicitly needed is when referring to a\nCiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener\nfrom a cluster scoped policy is not allowed." enum: - "CiliumEnvoyConfig" - "CiliumClusterwideEnvoyConfig" type: "string" name: - description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in." + description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where\nthe listener is defined in." minLength: 1 type: "string" required: @@ -323,7 +325,7 @@ spec: minLength: 1 type: "string" priority: - description: "Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent." + description: "Priority for this Listener that is used when multiple rules would apply different\nlisteners to a policy map entry. Behavior of this is implementation dependent." maximum: 100.0 minimum: 1.0 type: "integer" @@ -332,28 +334,28 @@ spec: - "name" type: "object" originatingTLS: - description: "OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint." + description: "OriginatingTLS is the TLS context for the connections originated by\nthe L7 proxy. For egress policy this specifies the client-side TLS\nparameters for the upstream connection originating from the L7 proxy\nto the remote destination. For ingress policy this specifies the\nclient-side TLS parameters for the connection from the L7 proxy to\nthe local endpoint." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -370,11 +372,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -387,7 +389,7 @@ spec: maxItems: 40 type: "array" rules: - description: "Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced." + description: "Rules is a list of additional port level rules which must be met in\norder for the PortRule to allow the traffic. If omitted or empty,\nno layer 7 rules are enforced." oneOf: - properties: http: {} @@ -421,11 +423,11 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" @@ -433,15 +435,15 @@ spec: http: description: "HTTP specific rules." items: - description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. \n All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986." + description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule does not have any\neffect.\n\nAll fields of this type are extended POSIX regex as defined by IEEE Std\n1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax)\nmatched against the path of an incoming request. Currently it can contain\ncharacters disallowed from the conventional \"path\" part of a URL as defined\nby RFC 3986." properties: headerMatches: - description: "HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match." + description: "HeaderMatches is a list of HTTP headers which must be\npresent and match against the given values. Mismatch field can be used\nto specify what to do when there is no match." items: - description: "HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough." + description: "HeaderMatch extends the HeaderValue for matching requirement of a\nnamed header field against an immediate string, a secret value, or\na regex. If none of the optional fields is present, then the\nheader value is not matched, only presence of the header is enough." properties: mismatch: - description: "Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log." + description: "Mismatch identifies what to do in case there is no match. The default is\nto drop the request. Otherwise the overall rule is still considered as\nmatching, but the mismatches are logged in the access log." enum: - "LOG" - "ADD" @@ -453,63 +455,63 @@ spec: minLength: 1 type: "string" secret: - description: "Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no \"Value\" specified, the match will fail." + description: "Secret refers to a secret that contains the value to be matched against.\nThe secret must only contain one entry. If the referred secret does not\nexist, and there is no \"Value\" specified, the match will fail." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" value: - description: "Value matches the exact value of the header. Can be specified either alone or together with \"Secret\"; will be used as the header value if the secret can not be found in the latter case." + description: "Value matches the exact value of the header. Can be specified either\nalone or together with \"Secret\"; will be used as the header value if the\nsecret can not be found in the latter case." type: "string" required: - "name" type: "object" type: "array" headers: - description: "Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present." + description: "Headers is a list of HTTP headers which must be present in the\nrequest. If omitted or empty, requests are allowed regardless of\nheaders present." items: type: "string" type: "array" host: - description: "Host is an extended POSIX regex matched against the host header of a request. Examples: \n - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\\.bar\\.com will only match the host foo.bar.com \n If omitted or empty, the value of the host header is ignored." + description: "Host is an extended POSIX regex matched against the host header of a\nrequest. Examples:\n\n- foo.bar.com will match the host fooXbar.com or foo-bar.com\n- foo\\.bar\\.com will only match the host foo.bar.com\n\nIf omitted or empty, the value of the host header is ignored." format: "idn-hostname" type: "string" method: - description: "Method is an extended POSIX regex matched against the method of a request, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ... \n If omitted or empty, all methods are allowed." + description: "Method is an extended POSIX regex matched against the method of a\nrequest, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ...\n\nIf omitted or empty, all methods are allowed." type: "string" path: - description: "Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986. \n If omitted or empty, all paths are all allowed." + description: "Path is an extended POSIX regex matched against the path of a\nrequest. Currently it can contain characters disallowed from the\nconventional \"path\" part of a URL as defined by RFC 3986.\n\nIf omitted or empty, all paths are all allowed." type: "string" type: "object" type: "array" kafka: description: "Kafka-specific rules." items: - description: "PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages." + description: "PortRule is a list of Kafka protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule will match all\nKafka messages." properties: apiKey: - description: "APIKey is a case-insensitive string matched against the key of a request, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys \n If omitted or empty, and if Role is not specified, then all keys are allowed." + description: "APIKey is a case-insensitive string matched against the key of a\nrequest, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al\nReference: https://kafka.apache.org/protocol#protocol_api_keys\n\nIf omitted or empty, and if Role is not specified, then all keys are allowed." type: "string" apiVersion: - description: "APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. \n If omitted or empty, all versions are allowed." + description: "APIVersion is the version matched against the api version of the\nKafka message. If set, it has to be a string representing a positive\ninteger.\n\nIf omitted or empty, all versions are allowed." type: "string" clientID: - description: "ClientID is the client identifier as provided in the request. \n From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. \n If omitted or empty, all client identifiers are allowed." + description: "ClientID is the client identifier as provided in the request.\n\nFrom Kafka protocol documentation:\nThis is a user supplied identifier for the client application. The\nuser can use any identifier they like and it will be used when\nlogging errors, monitoring aggregates, etc. For example, one might\nwant to monitor not just the requests per second overall, but the\nnumber coming from each client application (each of which could\nreside on multiple servers). This id acts as a logical grouping\nacross all requests from a particular client.\n\nIf omitted or empty, all client identifiers are allowed." type: "string" role: - description: "Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as \"produce\" or \"consume\". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. \n The following values are supported: - \"produce\": Allow producing to the topics specified in the rule - \"consume\": Allow consuming from the topics specified in the rule \n This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. \n If omitted or empty, and if APIKey is not specified, then all keys are allowed." + description: "Role is a case-insensitive string and describes a group of API keys\nnecessary to perform certain higher-level Kafka operations such as \"produce\"\nor \"consume\". A Role automatically expands into all APIKeys required\nto perform the specified higher-level operation.\n\nThe following values are supported:\n - \"produce\": Allow producing to the topics specified in the rule\n - \"consume\": Allow consuming from the topics specified in the rule\n\nThis field is incompatible with the APIKey field, i.e APIKey and Role\ncannot both be specified in the same rule.\n\nIf omitted or empty, and if APIKey is not specified, then all keys are\nallowed." enum: - "produce" - "consume" type: "string" topic: - description: "Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. \n This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. \n Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. \n If omitted or empty, all topics are allowed." + description: "Topic is the topic name contained in the message. If a Kafka request\ncontains multiple topics, then all topics must be allowed or the\nmessage will be rejected.\n\nThis constraint is ignored if the matched request message type\ndoesn't contain any topic. Maximum size of Topic can be 249\ncharacters as per recent Kafka spec and allowed characters are\na-z, A-Z, 0-9, -, . and _.\n\nOlder Kafka versions had longer topic lengths of 255, but in Kafka 0.10\nversion the length was changed from 255 to 249. For compatibility\nreasons we are using 255.\n\nIf omitted or empty, all topics are allowed." maxLength: 255 type: "string" type: "object" @@ -519,7 +521,7 @@ spec: items: additionalProperties: type: "string" - description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect." + description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as\nprotocol constraints. All fields are optional, if all fields are empty or\nmissing, the rule does not have any effect." type: "object" type: "array" l7proto: @@ -527,33 +529,33 @@ spec: type: "string" type: "object" serverNames: - description: "ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake." + description: "ServerNames is a list of allowed TLS SNI values. If not empty, then\nTLS must be present and one of the provided SNIs must be indicated in the\nTLS handshake." items: type: "string" type: "array" terminatingTLS: - description: "TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy." + description: "TerminatingTLS is the TLS context for the connection terminated by\nthe L7 proxy. For egress policy this specifies the server-side TLS\nparameters to be applied on the connections originated from the local\nendpoint and terminated by the L7 proxy. For ingress policy this specifies\nthe server-side TLS parameters to be applied on the connections\noriginated from a remote source and terminated by the L7 proxy." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -561,20 +563,20 @@ spec: type: "object" type: "array" toRequires: - description: "ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires any endpoint to which it communicates to also carry the label \"team=A\"." + description: "ToRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be able to connect to other\nendpoints. These additional constraints do no by itself grant access\nprivileges and must always be accompanied with at least one matching\nToEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires any endpoint to which it\ncommunicates to also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -582,7 +584,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -599,12 +601,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toServices: - description: "ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. \n Example: Any endpoint with the label \"app=backend-app\" is allowed to initiate connections to all cidrs backing the \"external-service\" service" + description: "ToServices is a list of services to which the endpoint subject\nto the rule is allowed to initiate connections.\nCurrently Cilium only supports toServices for K8s services without\nselectors.\n\nExample:\nAny endpoint with the label \"app=backend-app\" is allowed to\ninitiate connections to all cidrs backing the \"external-service\" service" items: description: "Service wraps around selectors for services" properties: @@ -627,13 +630,13 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -641,7 +644,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -658,9 +661,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" required: - "selector" type: "object" @@ -669,12 +673,12 @@ spec: type: "object" type: "array" egressDeny: - description: "EgressDeny is a list of EgressDenyRule which are enforced at egress. Any rule inserted here will be denied regardless of the allowed egress rules in the 'egress' field. If omitted or empty, this rule does not apply at egress." + description: "EgressDeny is a list of EgressDenyRule which are enforced at egress.\nAny rule inserted here will be denied regardless of the allowed egress\nrules in the 'egress' field.\nIf omitted or empty, this rule does not apply at egress." items: - description: "EgressDenyRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. \n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule." + description: "EgressDenyRule contains all rule types which can be applied at egress, i.e.\nnetwork traffic that originates inside the endpoint and exits the endpoint\nselected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members of the structure are specified, then all members\n must match in order for the rule to take effect. The exception to this\n rule is the ToRequires member; the effects of any Requires field in any\n rule will apply to all other rules as well.\n\n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are\n mutually exclusive. Only one of these members may be present within an\n individual rule." properties: icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to connect to. \n Example: Any endpoint with the label \"app=httpd\" is not allowed to initiate type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is not allowed to connect to.\n\nExample:\nAny endpoint with the label \"app=httpd\" is not allowed to initiate\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -685,7 +689,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -694,7 +698,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -705,16 +709,16 @@ spec: type: "object" type: "array" toCIDR: - description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24" + description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections. Only connections destined for\noutside of the cluster and not targeting the host will be subject\nto CIDR rules. This will match on the destination IP address of\noutgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet\nwith no ExcludeCIDRs is equivalent. Overlaps are allowed between\nToCIDR and ToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" toCIDRSet: - description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." + description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections to in addition to connections\nwhich are allowed via ToEndpoints, along with a list of subnets contained\nwithin their corresponding IP block to which traffic should not be\nallowed. This will match on the destination IP address of outgoing\nconnections. Adding a prefix into ToCIDR or into ToCIDRSet with no\nExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and\nToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -730,34 +734,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" toEndpoints: - description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. \n Example: Any endpoint with the label \"role=frontend\" can communicate with any endpoint carrying the label \"role=backend\"." + description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to\nwhich the endpoints subject to the rule are allowed to communicate.\n\nExample:\nAny endpoint with the label \"role=frontend\" can communicate with any\nendpoint carrying the label \"role=backend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -765,7 +769,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -782,14 +786,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toEntities: - description: "ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`." + description: "ToEntities is a list of special entities to which the endpoint subject\nto the rule is allowed to initiate connections. Supported entities are\n`world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`,\n`health`,`unmanaged` and `all`." items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -805,9 +810,9 @@ spec: type: "string" type: "array" toGroups: - description: "ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "ToGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\ntoGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -830,20 +835,20 @@ spec: type: "object" type: "array" toNodes: - description: "ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate." + description: "ToNodes is a list of nodes identified by an\nEndpointSelector to which endpoints subject to the rule is allowed to communicate." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -851,7 +856,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -868,14 +873,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to connect to. \n Example: Any endpoint with the label \"role=frontend\" is not allowed to initiate connections to destination port 8080/tcp" + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is not allowed to connect\nto.\n\nExample:\nAny endpoint with the label \"role=frontend\" is not allowed to initiate\nconnections to destination port 8080/tcp" items: - description: "PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies." + description: "PortDenyRule is a list of ports/protocol that should be used for deny\npolicies. This structure lacks the L7Rules since it's not supported in deny\npolicies." properties: ports: description: "Ports is a list of L4 port/protocol" @@ -889,11 +895,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -907,20 +913,20 @@ spec: type: "object" type: "array" toRequires: - description: "ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires any endpoint to which it communicates to also carry the label \"team=A\"." + description: "ToRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be able to connect to other\nendpoints. These additional constraints do no by itself grant access\nprivileges and must always be accompanied with at least one matching\nToEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires any endpoint to which it\ncommunicates to also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -928,7 +934,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -945,12 +951,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toServices: - description: "ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. \n Example: Any endpoint with the label \"app=backend-app\" is allowed to initiate connections to all cidrs backing the \"external-service\" service" + description: "ToServices is a list of services to which the endpoint subject\nto the rule is allowed to initiate connections.\nCurrently Cilium only supports toServices for K8s services without\nselectors.\n\nExample:\nAny endpoint with the label \"app=backend-app\" is allowed to\ninitiate connections to all cidrs backing the \"external-service\" service" items: description: "Service wraps around selectors for services" properties: @@ -973,13 +980,13 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -987,7 +994,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1004,9 +1011,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" required: - "selector" type: "object" @@ -1015,28 +1023,28 @@ spec: type: "object" type: "array" enableDefaultDeny: - description: "EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. \n If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. \n If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. \n This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode." + description: "EnableDefaultDeny determines whether this policy configures the\nsubject endpoint(s) to have a default deny mode. If enabled,\nthis causes all traffic not explicitly allowed by a network policy\nto be dropped.\n\nIf not specified, the default is true for each traffic direction\nthat has rules, and false otherwise. For example, if a policy\nonly has Ingress or IngressDeny rules, then the default for\ningress is true and egress is false.\n\nIf multiple policies apply to an endpoint, that endpoint's default deny\nwill be enabled if any policy requests it.\n\nThis is useful for creating broad-based network policies that will not\ncause endpoints to enter default-deny mode." properties: egress: - description: "Whether or not the endpoint should have a default-deny rule applied to egress traffic." + description: "Whether or not the endpoint should have a default-deny rule applied\nto egress traffic." type: "boolean" ingress: - description: "Whether or not the endpoint should have a default-deny rule applied to ingress traffic." + description: "Whether or not the endpoint should have a default-deny rule applied\nto ingress traffic." type: "boolean" type: "object" endpointSelector: - description: "EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive." + description: "EndpointSelector selects all endpoints which should be subject to\nthis rule. EndpointSelector and NodeSelector cannot be both empty and\nare mutually exclusive." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1044,7 +1052,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1061,13 +1069,14 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" ingress: - description: "Ingress is a list of IngressRule which are enforced at ingress. If omitted or empty, this rule does not apply at ingress." + description: "Ingress is a list of IngressRule which are enforced at ingress.\nIf omitted or empty, this rule does not apply at ingress." items: - description: "IngressRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. \n - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule." + description: "IngressRule contains all rule types which can be applied at ingress,\ni.e. network traffic that originates outside of the endpoint and\nis entering the endpoint selected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members are set, all of them need to match in order for\n the rule to take effect. The exception to this rule is FromRequires field;\n the effects of any Requires field in any rule will apply to all other\n rules as well.\n\n - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually\n exclusive. Only one of these members may be present within an individual\n rule." properties: authentication: description: "Authentication is the required authentication type for the allowed traffic, if any." @@ -1083,16 +1092,16 @@ spec: - "mode" type: "object" fromCIDR: - description: "FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.3.9.1" + description: "FromCIDR is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from. Only connections which\ndo *not* originate from the cluster or from the local host are subject\nto CIDR rules. In order to allow in-cluster connectivity, use the\nFromEndpoints field. This will match on the source IP address of\nincoming connections. Adding a prefix into FromCIDR or into\nFromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are\nallowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.3.9.1" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" fromCIDRSet: - description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." + description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from in addition to FromEndpoints,\nalong with a list of subnets contained within their corresponding IP block\nfrom which traffic should not be allowed.\nThis will match on the source IP address of incoming connections. Adding\na prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is\nequivalent. Overlaps are allowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -1108,34 +1117,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" fromEndpoints: - description: "FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. \n Example: Any endpoint with the label \"role=backend\" can be consumed by any endpoint carrying the label \"role=frontend\"." + description: "FromEndpoints is a list of endpoints identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule.\n\nExample:\nAny endpoint with the label \"role=backend\" can be consumed by any\nendpoint carrying the label \"role=frontend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1143,7 +1152,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1160,14 +1169,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromEntities: - description: "FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host`" + description: "FromEntities is a list of special entities which the endpoint subject\nto the rule is allowed to receive connections from. Supported entities are\n`world`, `cluster` and `host`" items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -1183,9 +1193,9 @@ spec: type: "string" type: "array" fromGroups: - description: "FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "FromGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\nFromGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -1208,20 +1218,20 @@ spec: type: "object" type: "array" fromNodes: - description: "FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule." + description: "FromNodes is a list of nodes identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1229,7 +1239,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1246,25 +1256,26 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromRequires: - description: "FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires consuming endpoint to also carry the label \"team=A\"." + description: "FromRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be reachable. These\nadditional constraints do no by itself grant access privileges and\nmust always be accompanied with at least one matching FromEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires consuming endpoint\nto also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1272,7 +1283,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1289,12 +1300,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can only accept incoming type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can only accept incoming\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -1305,7 +1317,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -1314,7 +1326,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -1325,24 +1337,24 @@ spec: type: "object" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can only accept incoming connections on port 80/tcp." + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can only accept incoming\nconnections on port 80/tcp." items: - description: "PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met." + description: "PortRule is a list of ports/protocol combinations with optional Layer 7\nrules which must be met." properties: listener: - description: "listener specifies the name of a custom Envoy listener to which this traffic should be redirected to." + description: "listener specifies the name of a custom Envoy listener to which this traffic should be\nredirected to." properties: envoyConfig: - description: "EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined." + description: "EnvoyConfig is a reference to the CEC or CCEC resource in which\nthe listener is defined." properties: kind: - description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed." + description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or\nCiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy,\nrespectively. The only case this is currently explicitly needed is when referring to a\nCiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener\nfrom a cluster scoped policy is not allowed." enum: - "CiliumEnvoyConfig" - "CiliumClusterwideEnvoyConfig" type: "string" name: - description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in." + description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where\nthe listener is defined in." minLength: 1 type: "string" required: @@ -1353,7 +1365,7 @@ spec: minLength: 1 type: "string" priority: - description: "Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent." + description: "Priority for this Listener that is used when multiple rules would apply different\nlisteners to a policy map entry. Behavior of this is implementation dependent." maximum: 100.0 minimum: 1.0 type: "integer" @@ -1362,28 +1374,28 @@ spec: - "name" type: "object" originatingTLS: - description: "OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint." + description: "OriginatingTLS is the TLS context for the connections originated by\nthe L7 proxy. For egress policy this specifies the client-side TLS\nparameters for the upstream connection originating from the L7 proxy\nto the remote destination. For ingress policy this specifies the\nclient-side TLS parameters for the connection from the L7 proxy to\nthe local endpoint." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -1400,11 +1412,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -1417,7 +1429,7 @@ spec: maxItems: 40 type: "array" rules: - description: "Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced." + description: "Rules is a list of additional port level rules which must be met in\norder for the PortRule to allow the traffic. If omitted or empty,\nno layer 7 rules are enforced." oneOf: - properties: http: {} @@ -1451,11 +1463,11 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" @@ -1463,15 +1475,15 @@ spec: http: description: "HTTP specific rules." items: - description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. \n All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986." + description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule does not have any\neffect.\n\nAll fields of this type are extended POSIX regex as defined by IEEE Std\n1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax)\nmatched against the path of an incoming request. Currently it can contain\ncharacters disallowed from the conventional \"path\" part of a URL as defined\nby RFC 3986." properties: headerMatches: - description: "HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match." + description: "HeaderMatches is a list of HTTP headers which must be\npresent and match against the given values. Mismatch field can be used\nto specify what to do when there is no match." items: - description: "HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough." + description: "HeaderMatch extends the HeaderValue for matching requirement of a\nnamed header field against an immediate string, a secret value, or\na regex. If none of the optional fields is present, then the\nheader value is not matched, only presence of the header is enough." properties: mismatch: - description: "Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log." + description: "Mismatch identifies what to do in case there is no match. The default is\nto drop the request. Otherwise the overall rule is still considered as\nmatching, but the mismatches are logged in the access log." enum: - "LOG" - "ADD" @@ -1483,63 +1495,63 @@ spec: minLength: 1 type: "string" secret: - description: "Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no \"Value\" specified, the match will fail." + description: "Secret refers to a secret that contains the value to be matched against.\nThe secret must only contain one entry. If the referred secret does not\nexist, and there is no \"Value\" specified, the match will fail." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" value: - description: "Value matches the exact value of the header. Can be specified either alone or together with \"Secret\"; will be used as the header value if the secret can not be found in the latter case." + description: "Value matches the exact value of the header. Can be specified either\nalone or together with \"Secret\"; will be used as the header value if the\nsecret can not be found in the latter case." type: "string" required: - "name" type: "object" type: "array" headers: - description: "Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present." + description: "Headers is a list of HTTP headers which must be present in the\nrequest. If omitted or empty, requests are allowed regardless of\nheaders present." items: type: "string" type: "array" host: - description: "Host is an extended POSIX regex matched against the host header of a request. Examples: \n - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\\.bar\\.com will only match the host foo.bar.com \n If omitted or empty, the value of the host header is ignored." + description: "Host is an extended POSIX regex matched against the host header of a\nrequest. Examples:\n\n- foo.bar.com will match the host fooXbar.com or foo-bar.com\n- foo\\.bar\\.com will only match the host foo.bar.com\n\nIf omitted or empty, the value of the host header is ignored." format: "idn-hostname" type: "string" method: - description: "Method is an extended POSIX regex matched against the method of a request, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ... \n If omitted or empty, all methods are allowed." + description: "Method is an extended POSIX regex matched against the method of a\nrequest, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ...\n\nIf omitted or empty, all methods are allowed." type: "string" path: - description: "Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986. \n If omitted or empty, all paths are all allowed." + description: "Path is an extended POSIX regex matched against the path of a\nrequest. Currently it can contain characters disallowed from the\nconventional \"path\" part of a URL as defined by RFC 3986.\n\nIf omitted or empty, all paths are all allowed." type: "string" type: "object" type: "array" kafka: description: "Kafka-specific rules." items: - description: "PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages." + description: "PortRule is a list of Kafka protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule will match all\nKafka messages." properties: apiKey: - description: "APIKey is a case-insensitive string matched against the key of a request, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys \n If omitted or empty, and if Role is not specified, then all keys are allowed." + description: "APIKey is a case-insensitive string matched against the key of a\nrequest, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al\nReference: https://kafka.apache.org/protocol#protocol_api_keys\n\nIf omitted or empty, and if Role is not specified, then all keys are allowed." type: "string" apiVersion: - description: "APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. \n If omitted or empty, all versions are allowed." + description: "APIVersion is the version matched against the api version of the\nKafka message. If set, it has to be a string representing a positive\ninteger.\n\nIf omitted or empty, all versions are allowed." type: "string" clientID: - description: "ClientID is the client identifier as provided in the request. \n From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. \n If omitted or empty, all client identifiers are allowed." + description: "ClientID is the client identifier as provided in the request.\n\nFrom Kafka protocol documentation:\nThis is a user supplied identifier for the client application. The\nuser can use any identifier they like and it will be used when\nlogging errors, monitoring aggregates, etc. For example, one might\nwant to monitor not just the requests per second overall, but the\nnumber coming from each client application (each of which could\nreside on multiple servers). This id acts as a logical grouping\nacross all requests from a particular client.\n\nIf omitted or empty, all client identifiers are allowed." type: "string" role: - description: "Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as \"produce\" or \"consume\". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. \n The following values are supported: - \"produce\": Allow producing to the topics specified in the rule - \"consume\": Allow consuming from the topics specified in the rule \n This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. \n If omitted or empty, and if APIKey is not specified, then all keys are allowed." + description: "Role is a case-insensitive string and describes a group of API keys\nnecessary to perform certain higher-level Kafka operations such as \"produce\"\nor \"consume\". A Role automatically expands into all APIKeys required\nto perform the specified higher-level operation.\n\nThe following values are supported:\n - \"produce\": Allow producing to the topics specified in the rule\n - \"consume\": Allow consuming from the topics specified in the rule\n\nThis field is incompatible with the APIKey field, i.e APIKey and Role\ncannot both be specified in the same rule.\n\nIf omitted or empty, and if APIKey is not specified, then all keys are\nallowed." enum: - "produce" - "consume" type: "string" topic: - description: "Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. \n This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. \n Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. \n If omitted or empty, all topics are allowed." + description: "Topic is the topic name contained in the message. If a Kafka request\ncontains multiple topics, then all topics must be allowed or the\nmessage will be rejected.\n\nThis constraint is ignored if the matched request message type\ndoesn't contain any topic. Maximum size of Topic can be 249\ncharacters as per recent Kafka spec and allowed characters are\na-z, A-Z, 0-9, -, . and _.\n\nOlder Kafka versions had longer topic lengths of 255, but in Kafka 0.10\nversion the length was changed from 255 to 249. For compatibility\nreasons we are using 255.\n\nIf omitted or empty, all topics are allowed." maxLength: 255 type: "string" type: "object" @@ -1549,7 +1561,7 @@ spec: items: additionalProperties: type: "string" - description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect." + description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as\nprotocol constraints. All fields are optional, if all fields are empty or\nmissing, the rule does not have any effect." type: "object" type: "array" l7proto: @@ -1557,33 +1569,33 @@ spec: type: "string" type: "object" serverNames: - description: "ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake." + description: "ServerNames is a list of allowed TLS SNI values. If not empty, then\nTLS must be present and one of the provided SNIs must be indicated in the\nTLS handshake." items: type: "string" type: "array" terminatingTLS: - description: "TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy." + description: "TerminatingTLS is the TLS context for the connection terminated by\nthe L7 proxy. For egress policy this specifies the server-side TLS\nparameters to be applied on the connections originated from the local\nendpoint and terminated by the L7 proxy. For ingress policy this specifies\nthe server-side TLS parameters to be applied on the connections\noriginated from a remote source and terminated by the L7 proxy." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -1593,21 +1605,21 @@ spec: type: "object" type: "array" ingressDeny: - description: "IngressDeny is a list of IngressDenyRule which are enforced at ingress. Any rule inserted here will be denied regardless of the allowed ingress rules in the 'ingress' field. If omitted or empty, this rule does not apply at ingress." + description: "IngressDeny is a list of IngressDenyRule which are enforced at ingress.\nAny rule inserted here will be denied regardless of the allowed ingress\nrules in the 'ingress' field.\nIf omitted or empty, this rule does not apply at ingress." items: - description: "IngressDenyRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. \n - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule." + description: "IngressDenyRule contains all rule types which can be applied at ingress,\ni.e. network traffic that originates outside of the endpoint and\nis entering the endpoint selected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members are set, all of them need to match in order for\n the rule to take effect. The exception to this rule is FromRequires field;\n the effects of any Requires field in any rule will apply to all other\n rules as well.\n\n - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually\n exclusive. Only one of these members may be present within an individual\n rule." properties: fromCIDR: - description: "FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.3.9.1" + description: "FromCIDR is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from. Only connections which\ndo *not* originate from the cluster or from the local host are subject\nto CIDR rules. In order to allow in-cluster connectivity, use the\nFromEndpoints field. This will match on the source IP address of\nincoming connections. Adding a prefix into FromCIDR or into\nFromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are\nallowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.3.9.1" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" fromCIDRSet: - description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." + description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from in addition to FromEndpoints,\nalong with a list of subnets contained within their corresponding IP block\nfrom which traffic should not be allowed.\nThis will match on the source IP address of incoming connections. Adding\na prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is\nequivalent. Overlaps are allowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -1623,34 +1635,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" fromEndpoints: - description: "FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. \n Example: Any endpoint with the label \"role=backend\" can be consumed by any endpoint carrying the label \"role=frontend\"." + description: "FromEndpoints is a list of endpoints identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule.\n\nExample:\nAny endpoint with the label \"role=backend\" can be consumed by any\nendpoint carrying the label \"role=frontend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1658,7 +1670,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1675,14 +1687,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromEntities: - description: "FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host`" + description: "FromEntities is a list of special entities which the endpoint subject\nto the rule is allowed to receive connections from. Supported entities are\n`world`, `cluster` and `host`" items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -1698,9 +1711,9 @@ spec: type: "string" type: "array" fromGroups: - description: "FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "FromGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\nFromGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -1723,20 +1736,20 @@ spec: type: "object" type: "array" fromNodes: - description: "FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule." + description: "FromNodes is a list of nodes identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1744,7 +1757,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1761,25 +1774,26 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromRequires: - description: "FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires consuming endpoint to also carry the label \"team=A\"." + description: "FromRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be reachable. These\nadditional constraints do no by itself grant access privileges and\nmust always be accompanied with at least one matching FromEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires consuming endpoint\nto also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1787,7 +1801,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1804,12 +1818,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can not accept incoming type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is not allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can not accept incoming\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -1820,7 +1835,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -1829,7 +1844,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -1840,9 +1855,9 @@ spec: type: "object" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can not accept incoming connections on port 80/tcp." + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is not allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can not accept incoming\nconnections on port 80/tcp." items: - description: "PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies." + description: "PortDenyRule is a list of ports/protocol that should be used for deny\npolicies. This structure lacks the L7Rules since it's not supported in deny\npolicies." properties: ports: description: "Ports is a list of L4 port/protocol" @@ -1856,11 +1871,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -1876,7 +1891,7 @@ spec: type: "object" type: "array" labels: - description: "Labels is a list of optional strings which can be used to re-identify the rule or to store metadata. It is possible to lookup or delete strings based on labels. Labels are not required to be unique, multiple rules can have overlapping or identical labels." + description: "Labels is a list of optional strings which can be used to\nre-identify the rule or to store metadata. It is possible to lookup\nor delete strings based on labels. Labels are not required to be\nunique, multiple rules can have overlapping or identical labels." items: description: "Label is the Cilium's representation of a container label." properties: @@ -1892,18 +1907,18 @@ spec: type: "object" type: "array" nodeSelector: - description: "NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies." + description: "NodeSelector selects all nodes which should be subject to this rule.\nEndpointSelector and NodeSelector cannot be both empty and are mutually\nexclusive. Can only be used in CiliumClusterwideNetworkPolicies." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -1911,7 +1926,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -1928,14 +1943,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "object" specs: description: "Specs is a list of desired Cilium specific rule specification." items: - description: "Rule is a policy rule which must be applied to all endpoints which match the labels contained in the endpointSelector \n Each rule is split into an ingress section which contains all rules applicable at ingress, and an egress section applicable at egress. For rule types such as `L4Rule` and `CIDR` which can be applied at both ingress and egress, both ingress and egress side have to either specifically allow the connection or one side has to be omitted. \n Either ingress, egress, or both can be provided. If both ingress and egress are omitted, the rule has no effect." + description: "Rule is a policy rule which must be applied to all endpoints which match the\nlabels contained in the endpointSelector\n\nEach rule is split into an ingress section which contains all rules\napplicable at ingress, and an egress section applicable at egress. For rule\ntypes such as `L4Rule` and `CIDR` which can be applied at both ingress and\negress, both ingress and egress side have to either specifically allow the\nconnection or one side has to be omitted.\n\nEither ingress, egress, or both can be provided. If both ingress and egress\nare omitted, the rule has no effect." oneOf: - properties: endpointSelector: {} @@ -1947,12 +1963,12 @@ spec: - "nodeSelector" properties: description: - description: "Description is a free form string, it can be used by the creator of the rule to store human readable explanation of the purpose of this rule. Rules cannot be identified by comment." + description: "Description is a free form string, it can be used by the creator of\nthe rule to store human readable explanation of the purpose of this\nrule. Rules cannot be identified by comment." type: "string" egress: - description: "Egress is a list of EgressRule which are enforced at egress. If omitted or empty, this rule does not apply at egress." + description: "Egress is a list of EgressRule which are enforced at egress.\nIf omitted or empty, this rule does not apply at egress." items: - description: "EgressRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. \n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule." + description: "EgressRule contains all rule types which can be applied at egress, i.e.\nnetwork traffic that originates inside the endpoint and exits the endpoint\nselected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members of the structure are specified, then all members\n must match in order for the rule to take effect. The exception to this\n rule is the ToRequires member; the effects of any Requires field in any\n rule will apply to all other rules as well.\n\n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are\n mutually exclusive. Only one of these members may be present within an\n individual rule." properties: authentication: description: "Authentication is the required authentication type for the allowed traffic, if any." @@ -1968,7 +1984,7 @@ spec: - "mode" type: "object" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to connect to. \n Example: Any endpoint with the label \"app=httpd\" is allowed to initiate type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is allowed to connect to.\n\nExample:\nAny endpoint with the label \"app=httpd\" is allowed to initiate\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -1979,7 +1995,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -1988,7 +2004,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -1999,16 +2015,16 @@ spec: type: "object" type: "array" toCIDR: - description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24" + description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections. Only connections destined for\noutside of the cluster and not targeting the host will be subject\nto CIDR rules. This will match on the destination IP address of\noutgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet\nwith no ExcludeCIDRs is equivalent. Overlaps are allowed between\nToCIDR and ToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" toCIDRSet: - description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." + description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections to in addition to connections\nwhich are allowed via ToEndpoints, along with a list of subnets contained\nwithin their corresponding IP block to which traffic should not be\nallowed. This will match on the destination IP address of outgoing\nconnections. Adding a prefix into ToCIDR or into ToCIDRSet with no\nExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and\nToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -2024,34 +2040,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" toEndpoints: - description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. \n Example: Any endpoint with the label \"role=frontend\" can communicate with any endpoint carrying the label \"role=backend\"." + description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to\nwhich the endpoints subject to the rule are allowed to communicate.\n\nExample:\nAny endpoint with the label \"role=frontend\" can communicate with any\nendpoint carrying the label \"role=backend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2059,7 +2075,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2076,14 +2092,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toEntities: - description: "ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`." + description: "ToEntities is a list of special entities to which the endpoint subject\nto the rule is allowed to initiate connections. Supported entities are\n`world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`,\n`health`,`unmanaged` and `all`." items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -2099,7 +2116,7 @@ spec: type: "string" type: "array" toFQDNs: - description: "ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result from DNS resolution of `ToFQDN.MatchName`s are added to the same EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and L7 rules within this EgressRule will also apply to these IPs. The DNS -> IP mapping is re-resolved periodically from within the cilium-agent, and the IPs in the DNS response are effected in the policy for selected pods as-is (i.e. the list of IPs is not modified in any way). Note: An explicit rule to allow for DNS traffic is needed for the pods, as ToFQDN counts as an egress rule and will enforce egress policy when PolicyEnforcment=default. Note: If the resolved IPs are IPs within the kubernetes cluster, the ToFQDN rule will not apply to that IP. Note: ToFQDN cannot occur in the same policy as other To* rules." + description: "ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result\nfrom DNS resolution of `ToFQDN.MatchName`s are added to the same\nEgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and\nL7 rules within this EgressRule will also apply to these IPs.\nThe DNS -> IP mapping is re-resolved periodically from within the\ncilium-agent, and the IPs in the DNS response are effected in the policy\nfor selected pods as-is (i.e. the list of IPs is not modified in any way).\nNote: An explicit rule to allow for DNS traffic is needed for the pods, as\nToFQDN counts as an egress rule and will enforce egress policy when\nPolicyEnforcment=default.\nNote: If the resolved IPs are IPs within the kubernetes cluster, the\nToFQDN rule will not apply to that IP.\nNote: ToFQDN cannot occur in the same policy as other To* rules." items: oneOf: - properties: @@ -2112,19 +2129,19 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" type: "array" toGroups: - description: "ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "ToGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\ntoGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -2147,20 +2164,20 @@ spec: type: "object" type: "array" toNodes: - description: "ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate." + description: "ToNodes is a list of nodes identified by an\nEndpointSelector to which endpoints subject to the rule is allowed to communicate." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2168,7 +2185,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2185,29 +2202,30 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to connect to. \n Example: Any endpoint with the label \"role=frontend\" is allowed to initiate connections to destination port 8080/tcp" + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is allowed to\nconnect to.\n\nExample:\nAny endpoint with the label \"role=frontend\" is allowed to initiate\nconnections to destination port 8080/tcp" items: - description: "PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met." + description: "PortRule is a list of ports/protocol combinations with optional Layer 7\nrules which must be met." properties: listener: - description: "listener specifies the name of a custom Envoy listener to which this traffic should be redirected to." + description: "listener specifies the name of a custom Envoy listener to which this traffic should be\nredirected to." properties: envoyConfig: - description: "EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined." + description: "EnvoyConfig is a reference to the CEC or CCEC resource in which\nthe listener is defined." properties: kind: - description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed." + description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or\nCiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy,\nrespectively. The only case this is currently explicitly needed is when referring to a\nCiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener\nfrom a cluster scoped policy is not allowed." enum: - "CiliumEnvoyConfig" - "CiliumClusterwideEnvoyConfig" type: "string" name: - description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in." + description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where\nthe listener is defined in." minLength: 1 type: "string" required: @@ -2218,7 +2236,7 @@ spec: minLength: 1 type: "string" priority: - description: "Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent." + description: "Priority for this Listener that is used when multiple rules would apply different\nlisteners to a policy map entry. Behavior of this is implementation dependent." maximum: 100.0 minimum: 1.0 type: "integer" @@ -2227,28 +2245,28 @@ spec: - "name" type: "object" originatingTLS: - description: "OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint." + description: "OriginatingTLS is the TLS context for the connections originated by\nthe L7 proxy. For egress policy this specifies the client-side TLS\nparameters for the upstream connection originating from the L7 proxy\nto the remote destination. For ingress policy this specifies the\nclient-side TLS parameters for the connection from the L7 proxy to\nthe local endpoint." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -2265,11 +2283,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -2282,7 +2300,7 @@ spec: maxItems: 40 type: "array" rules: - description: "Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced." + description: "Rules is a list of additional port level rules which must be met in\norder for the PortRule to allow the traffic. If omitted or empty,\nno layer 7 rules are enforced." oneOf: - properties: http: {} @@ -2316,11 +2334,11 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" @@ -2328,15 +2346,15 @@ spec: http: description: "HTTP specific rules." items: - description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. \n All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986." + description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule does not have any\neffect.\n\nAll fields of this type are extended POSIX regex as defined by IEEE Std\n1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax)\nmatched against the path of an incoming request. Currently it can contain\ncharacters disallowed from the conventional \"path\" part of a URL as defined\nby RFC 3986." properties: headerMatches: - description: "HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match." + description: "HeaderMatches is a list of HTTP headers which must be\npresent and match against the given values. Mismatch field can be used\nto specify what to do when there is no match." items: - description: "HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough." + description: "HeaderMatch extends the HeaderValue for matching requirement of a\nnamed header field against an immediate string, a secret value, or\na regex. If none of the optional fields is present, then the\nheader value is not matched, only presence of the header is enough." properties: mismatch: - description: "Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log." + description: "Mismatch identifies what to do in case there is no match. The default is\nto drop the request. Otherwise the overall rule is still considered as\nmatching, but the mismatches are logged in the access log." enum: - "LOG" - "ADD" @@ -2348,63 +2366,63 @@ spec: minLength: 1 type: "string" secret: - description: "Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no \"Value\" specified, the match will fail." + description: "Secret refers to a secret that contains the value to be matched against.\nThe secret must only contain one entry. If the referred secret does not\nexist, and there is no \"Value\" specified, the match will fail." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" value: - description: "Value matches the exact value of the header. Can be specified either alone or together with \"Secret\"; will be used as the header value if the secret can not be found in the latter case." + description: "Value matches the exact value of the header. Can be specified either\nalone or together with \"Secret\"; will be used as the header value if the\nsecret can not be found in the latter case." type: "string" required: - "name" type: "object" type: "array" headers: - description: "Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present." + description: "Headers is a list of HTTP headers which must be present in the\nrequest. If omitted or empty, requests are allowed regardless of\nheaders present." items: type: "string" type: "array" host: - description: "Host is an extended POSIX regex matched against the host header of a request. Examples: \n - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\\.bar\\.com will only match the host foo.bar.com \n If omitted or empty, the value of the host header is ignored." + description: "Host is an extended POSIX regex matched against the host header of a\nrequest. Examples:\n\n- foo.bar.com will match the host fooXbar.com or foo-bar.com\n- foo\\.bar\\.com will only match the host foo.bar.com\n\nIf omitted or empty, the value of the host header is ignored." format: "idn-hostname" type: "string" method: - description: "Method is an extended POSIX regex matched against the method of a request, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ... \n If omitted or empty, all methods are allowed." + description: "Method is an extended POSIX regex matched against the method of a\nrequest, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ...\n\nIf omitted or empty, all methods are allowed." type: "string" path: - description: "Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986. \n If omitted or empty, all paths are all allowed." + description: "Path is an extended POSIX regex matched against the path of a\nrequest. Currently it can contain characters disallowed from the\nconventional \"path\" part of a URL as defined by RFC 3986.\n\nIf omitted or empty, all paths are all allowed." type: "string" type: "object" type: "array" kafka: description: "Kafka-specific rules." items: - description: "PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages." + description: "PortRule is a list of Kafka protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule will match all\nKafka messages." properties: apiKey: - description: "APIKey is a case-insensitive string matched against the key of a request, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys \n If omitted or empty, and if Role is not specified, then all keys are allowed." + description: "APIKey is a case-insensitive string matched against the key of a\nrequest, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al\nReference: https://kafka.apache.org/protocol#protocol_api_keys\n\nIf omitted or empty, and if Role is not specified, then all keys are allowed." type: "string" apiVersion: - description: "APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. \n If omitted or empty, all versions are allowed." + description: "APIVersion is the version matched against the api version of the\nKafka message. If set, it has to be a string representing a positive\ninteger.\n\nIf omitted or empty, all versions are allowed." type: "string" clientID: - description: "ClientID is the client identifier as provided in the request. \n From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. \n If omitted or empty, all client identifiers are allowed." + description: "ClientID is the client identifier as provided in the request.\n\nFrom Kafka protocol documentation:\nThis is a user supplied identifier for the client application. The\nuser can use any identifier they like and it will be used when\nlogging errors, monitoring aggregates, etc. For example, one might\nwant to monitor not just the requests per second overall, but the\nnumber coming from each client application (each of which could\nreside on multiple servers). This id acts as a logical grouping\nacross all requests from a particular client.\n\nIf omitted or empty, all client identifiers are allowed." type: "string" role: - description: "Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as \"produce\" or \"consume\". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. \n The following values are supported: - \"produce\": Allow producing to the topics specified in the rule - \"consume\": Allow consuming from the topics specified in the rule \n This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. \n If omitted or empty, and if APIKey is not specified, then all keys are allowed." + description: "Role is a case-insensitive string and describes a group of API keys\nnecessary to perform certain higher-level Kafka operations such as \"produce\"\nor \"consume\". A Role automatically expands into all APIKeys required\nto perform the specified higher-level operation.\n\nThe following values are supported:\n - \"produce\": Allow producing to the topics specified in the rule\n - \"consume\": Allow consuming from the topics specified in the rule\n\nThis field is incompatible with the APIKey field, i.e APIKey and Role\ncannot both be specified in the same rule.\n\nIf omitted or empty, and if APIKey is not specified, then all keys are\nallowed." enum: - "produce" - "consume" type: "string" topic: - description: "Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. \n This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. \n Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. \n If omitted or empty, all topics are allowed." + description: "Topic is the topic name contained in the message. If a Kafka request\ncontains multiple topics, then all topics must be allowed or the\nmessage will be rejected.\n\nThis constraint is ignored if the matched request message type\ndoesn't contain any topic. Maximum size of Topic can be 249\ncharacters as per recent Kafka spec and allowed characters are\na-z, A-Z, 0-9, -, . and _.\n\nOlder Kafka versions had longer topic lengths of 255, but in Kafka 0.10\nversion the length was changed from 255 to 249. For compatibility\nreasons we are using 255.\n\nIf omitted or empty, all topics are allowed." maxLength: 255 type: "string" type: "object" @@ -2414,7 +2432,7 @@ spec: items: additionalProperties: type: "string" - description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect." + description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as\nprotocol constraints. All fields are optional, if all fields are empty or\nmissing, the rule does not have any effect." type: "object" type: "array" l7proto: @@ -2422,33 +2440,33 @@ spec: type: "string" type: "object" serverNames: - description: "ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake." + description: "ServerNames is a list of allowed TLS SNI values. If not empty, then\nTLS must be present and one of the provided SNIs must be indicated in the\nTLS handshake." items: type: "string" type: "array" terminatingTLS: - description: "TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy." + description: "TerminatingTLS is the TLS context for the connection terminated by\nthe L7 proxy. For egress policy this specifies the server-side TLS\nparameters to be applied on the connections originated from the local\nendpoint and terminated by the L7 proxy. For ingress policy this specifies\nthe server-side TLS parameters to be applied on the connections\noriginated from a remote source and terminated by the L7 proxy." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -2456,20 +2474,20 @@ spec: type: "object" type: "array" toRequires: - description: "ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires any endpoint to which it communicates to also carry the label \"team=A\"." + description: "ToRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be able to connect to other\nendpoints. These additional constraints do no by itself grant access\nprivileges and must always be accompanied with at least one matching\nToEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires any endpoint to which it\ncommunicates to also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2477,7 +2495,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2494,12 +2512,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toServices: - description: "ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. \n Example: Any endpoint with the label \"app=backend-app\" is allowed to initiate connections to all cidrs backing the \"external-service\" service" + description: "ToServices is a list of services to which the endpoint subject\nto the rule is allowed to initiate connections.\nCurrently Cilium only supports toServices for K8s services without\nselectors.\n\nExample:\nAny endpoint with the label \"app=backend-app\" is allowed to\ninitiate connections to all cidrs backing the \"external-service\" service" items: description: "Service wraps around selectors for services" properties: @@ -2522,13 +2541,13 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2536,7 +2555,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2553,9 +2572,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" required: - "selector" type: "object" @@ -2564,12 +2584,12 @@ spec: type: "object" type: "array" egressDeny: - description: "EgressDeny is a list of EgressDenyRule which are enforced at egress. Any rule inserted here will be denied regardless of the allowed egress rules in the 'egress' field. If omitted or empty, this rule does not apply at egress." + description: "EgressDeny is a list of EgressDenyRule which are enforced at egress.\nAny rule inserted here will be denied regardless of the allowed egress\nrules in the 'egress' field.\nIf omitted or empty, this rule does not apply at egress." items: - description: "EgressDenyRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. \n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule." + description: "EgressDenyRule contains all rule types which can be applied at egress, i.e.\nnetwork traffic that originates inside the endpoint and exits the endpoint\nselected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members of the structure are specified, then all members\n must match in order for the rule to take effect. The exception to this\n rule is the ToRequires member; the effects of any Requires field in any\n rule will apply to all other rules as well.\n\n - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are\n mutually exclusive. Only one of these members may be present within an\n individual rule." properties: icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to connect to. \n Example: Any endpoint with the label \"app=httpd\" is not allowed to initiate type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is not allowed to connect to.\n\nExample:\nAny endpoint with the label \"app=httpd\" is not allowed to initiate\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -2580,7 +2600,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -2589,7 +2609,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -2600,16 +2620,16 @@ spec: type: "object" type: "array" toCIDR: - description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24" + description: "ToCIDR is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections. Only connections destined for\noutside of the cluster and not targeting the host will be subject\nto CIDR rules. This will match on the destination IP address of\noutgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet\nwith no ExcludeCIDRs is equivalent. Overlaps are allowed between\nToCIDR and ToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" toCIDRSet: - description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. \n Example: Any endpoint with the label \"app=database-proxy\" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." + description: "ToCIDRSet is a list of IP blocks which the endpoint subject to the rule\nis allowed to initiate connections to in addition to connections\nwhich are allowed via ToEndpoints, along with a list of subnets contained\nwithin their corresponding IP block to which traffic should not be\nallowed. This will match on the destination IP address of outgoing\nconnections. Adding a prefix into ToCIDR or into ToCIDRSet with no\nExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and\nToCIDRSet.\n\nExample:\nAny endpoint with the label \"app=database-proxy\" is allowed to\ninitiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -2625,34 +2645,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" toEndpoints: - description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. \n Example: Any endpoint with the label \"role=frontend\" can communicate with any endpoint carrying the label \"role=backend\"." + description: "ToEndpoints is a list of endpoints identified by an EndpointSelector to\nwhich the endpoints subject to the rule are allowed to communicate.\n\nExample:\nAny endpoint with the label \"role=frontend\" can communicate with any\nendpoint carrying the label \"role=backend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2660,7 +2680,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2677,14 +2697,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toEntities: - description: "ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`." + description: "ToEntities is a list of special entities to which the endpoint subject\nto the rule is allowed to initiate connections. Supported entities are\n`world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`,\n`health`,`unmanaged` and `all`." items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -2700,9 +2721,9 @@ spec: type: "string" type: "array" toGroups: - description: "ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "ToGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\ntoGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -2725,20 +2746,20 @@ spec: type: "object" type: "array" toNodes: - description: "ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate." + description: "ToNodes is a list of nodes identified by an\nEndpointSelector to which endpoints subject to the rule is allowed to communicate." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2746,7 +2767,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2763,14 +2784,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to connect to. \n Example: Any endpoint with the label \"role=frontend\" is not allowed to initiate connections to destination port 8080/tcp" + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is not allowed to connect\nto.\n\nExample:\nAny endpoint with the label \"role=frontend\" is not allowed to initiate\nconnections to destination port 8080/tcp" items: - description: "PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies." + description: "PortDenyRule is a list of ports/protocol that should be used for deny\npolicies. This structure lacks the L7Rules since it's not supported in deny\npolicies." properties: ports: description: "Ports is a list of L4 port/protocol" @@ -2784,11 +2806,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -2802,20 +2824,20 @@ spec: type: "object" type: "array" toRequires: - description: "ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires any endpoint to which it communicates to also carry the label \"team=A\"." + description: "ToRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be able to connect to other\nendpoints. These additional constraints do no by itself grant access\nprivileges and must always be accompanied with at least one matching\nToEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires any endpoint to which it\ncommunicates to also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2823,7 +2845,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2840,12 +2862,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" toServices: - description: "ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. \n Example: Any endpoint with the label \"app=backend-app\" is allowed to initiate connections to all cidrs backing the \"external-service\" service" + description: "ToServices is a list of services to which the endpoint subject\nto the rule is allowed to initiate connections.\nCurrently Cilium only supports toServices for K8s services without\nselectors.\n\nExample:\nAny endpoint with the label \"app=backend-app\" is allowed to\ninitiate connections to all cidrs backing the \"external-service\" service" items: description: "Service wraps around selectors for services" properties: @@ -2868,13 +2891,13 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2882,7 +2905,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2899,9 +2922,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" required: - "selector" type: "object" @@ -2910,28 +2934,28 @@ spec: type: "object" type: "array" enableDefaultDeny: - description: "EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. \n If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. \n If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. \n This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode." + description: "EnableDefaultDeny determines whether this policy configures the\nsubject endpoint(s) to have a default deny mode. If enabled,\nthis causes all traffic not explicitly allowed by a network policy\nto be dropped.\n\nIf not specified, the default is true for each traffic direction\nthat has rules, and false otherwise. For example, if a policy\nonly has Ingress or IngressDeny rules, then the default for\ningress is true and egress is false.\n\nIf multiple policies apply to an endpoint, that endpoint's default deny\nwill be enabled if any policy requests it.\n\nThis is useful for creating broad-based network policies that will not\ncause endpoints to enter default-deny mode." properties: egress: - description: "Whether or not the endpoint should have a default-deny rule applied to egress traffic." + description: "Whether or not the endpoint should have a default-deny rule applied\nto egress traffic." type: "boolean" ingress: - description: "Whether or not the endpoint should have a default-deny rule applied to ingress traffic." + description: "Whether or not the endpoint should have a default-deny rule applied\nto ingress traffic." type: "boolean" type: "object" endpointSelector: - description: "EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive." + description: "EndpointSelector selects all endpoints which should be subject to\nthis rule. EndpointSelector and NodeSelector cannot be both empty and\nare mutually exclusive." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -2939,7 +2963,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -2956,13 +2980,14 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" ingress: - description: "Ingress is a list of IngressRule which are enforced at ingress. If omitted or empty, this rule does not apply at ingress." + description: "Ingress is a list of IngressRule which are enforced at ingress.\nIf omitted or empty, this rule does not apply at ingress." items: - description: "IngressRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. \n - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule." + description: "IngressRule contains all rule types which can be applied at ingress,\ni.e. network traffic that originates outside of the endpoint and\nis entering the endpoint selected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members are set, all of them need to match in order for\n the rule to take effect. The exception to this rule is FromRequires field;\n the effects of any Requires field in any rule will apply to all other\n rules as well.\n\n - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually\n exclusive. Only one of these members may be present within an individual\n rule." properties: authentication: description: "Authentication is the required authentication type for the allowed traffic, if any." @@ -2978,16 +3003,16 @@ spec: - "mode" type: "object" fromCIDR: - description: "FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.3.9.1" + description: "FromCIDR is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from. Only connections which\ndo *not* originate from the cluster or from the local host are subject\nto CIDR rules. In order to allow in-cluster connectivity, use the\nFromEndpoints field. This will match on the source IP address of\nincoming connections. Adding a prefix into FromCIDR or into\nFromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are\nallowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.3.9.1" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" fromCIDRSet: - description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." + description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from in addition to FromEndpoints,\nalong with a list of subnets contained within their corresponding IP block\nfrom which traffic should not be allowed.\nThis will match on the source IP address of incoming connections. Adding\na prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is\nequivalent. Overlaps are allowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -3003,34 +3028,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" fromEndpoints: - description: "FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. \n Example: Any endpoint with the label \"role=backend\" can be consumed by any endpoint carrying the label \"role=frontend\"." + description: "FromEndpoints is a list of endpoints identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule.\n\nExample:\nAny endpoint with the label \"role=backend\" can be consumed by any\nendpoint carrying the label \"role=frontend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3038,7 +3063,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3055,14 +3080,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromEntities: - description: "FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host`" + description: "FromEntities is a list of special entities which the endpoint subject\nto the rule is allowed to receive connections from. Supported entities are\n`world`, `cluster` and `host`" items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -3078,9 +3104,9 @@ spec: type: "string" type: "array" fromGroups: - description: "FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "FromGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\nFromGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -3103,20 +3129,20 @@ spec: type: "object" type: "array" fromNodes: - description: "FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule." + description: "FromNodes is a list of nodes identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3124,7 +3150,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3141,25 +3167,26 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromRequires: - description: "FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires consuming endpoint to also carry the label \"team=A\"." + description: "FromRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be reachable. These\nadditional constraints do no by itself grant access privileges and\nmust always be accompanied with at least one matching FromEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires consuming endpoint\nto also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3167,7 +3194,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3184,12 +3211,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can only accept incoming type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can only accept incoming\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -3200,7 +3228,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -3209,7 +3237,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -3220,24 +3248,24 @@ spec: type: "object" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can only accept incoming connections on port 80/tcp." + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can only accept incoming\nconnections on port 80/tcp." items: - description: "PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met." + description: "PortRule is a list of ports/protocol combinations with optional Layer 7\nrules which must be met." properties: listener: - description: "listener specifies the name of a custom Envoy listener to which this traffic should be redirected to." + description: "listener specifies the name of a custom Envoy listener to which this traffic should be\nredirected to." properties: envoyConfig: - description: "EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined." + description: "EnvoyConfig is a reference to the CEC or CCEC resource in which\nthe listener is defined." properties: kind: - description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed." + description: "Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or\nCiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy,\nrespectively. The only case this is currently explicitly needed is when referring to a\nCiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener\nfrom a cluster scoped policy is not allowed." enum: - "CiliumEnvoyConfig" - "CiliumClusterwideEnvoyConfig" type: "string" name: - description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in." + description: "Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where\nthe listener is defined in." minLength: 1 type: "string" required: @@ -3248,7 +3276,7 @@ spec: minLength: 1 type: "string" priority: - description: "Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent." + description: "Priority for this Listener that is used when multiple rules would apply different\nlisteners to a policy map entry. Behavior of this is implementation dependent." maximum: 100.0 minimum: 1.0 type: "integer" @@ -3257,28 +3285,28 @@ spec: - "name" type: "object" originatingTLS: - description: "OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint." + description: "OriginatingTLS is the TLS context for the connections originated by\nthe L7 proxy. For egress policy this specifies the client-side TLS\nparameters for the upstream connection originating from the L7 proxy\nto the remote destination. For ingress policy this specifies the\nclient-side TLS parameters for the connection from the L7 proxy to\nthe local endpoint." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -3295,11 +3323,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -3312,7 +3340,7 @@ spec: maxItems: 40 type: "array" rules: - description: "Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced." + description: "Rules is a list of additional port level rules which must be met in\norder for the PortRule to allow the traffic. If omitted or empty,\nno layer 7 rules are enforced." oneOf: - properties: http: {} @@ -3346,11 +3374,11 @@ spec: - "matchPattern" properties: matchName: - description: "MatchName matches literal DNS names. A trailing \".\" is automatically added when missing." + description: "MatchName matches literal DNS names. A trailing \".\" is automatically added\nwhen missing." pattern: "^([-a-zA-Z0-9_]+[.]?)+$" type: "string" matchPattern: - description: "MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - \"*\" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a \"*\" as the leftmost character, without a following \".\" matches all subdomains as well as the name to the right. A trailing \".\" is automatically added when missing. \n Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\" except those containing \".\" separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with \"sub\" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not" + description: "MatchPattern allows using wildcards to match DNS names. All wildcards are\ncase insensitive. The wildcards are:\n- \"*\" matches 0 or more DNS valid characters, and may occur anywhere in\nthe pattern. As a special case a \"*\" as the leftmost character, without a\nfollowing \".\" matches all subdomains as well as the name to the right.\nA trailing \".\" is automatically added when missing.\n\nExamples:\n`*.cilium.io` matches subomains of cilium at that level\n www.cilium.io and blog.cilium.io match, cilium.io and google.com do not\n`*cilium.io` matches cilium.io and all subdomains ends with \"cilium.io\"\n except those containing \".\" separator, subcilium.io and sub-cilium.io match,\n www.cilium.io and blog.cilium.io does not\nsub*.cilium.io matches subdomains of cilium where the subdomain component\nbegins with \"sub\"\n sub.cilium.io and subdomain.cilium.io match, www.cilium.io,\n blog.cilium.io, cilium.io and google.com do not" pattern: "^([-a-zA-Z0-9_*]+[.]?)+$" type: "string" type: "object" @@ -3358,15 +3386,15 @@ spec: http: description: "HTTP specific rules." items: - description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. \n All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986." + description: "PortRuleHTTP is a list of HTTP protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule does not have any\neffect.\n\nAll fields of this type are extended POSIX regex as defined by IEEE Std\n1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax)\nmatched against the path of an incoming request. Currently it can contain\ncharacters disallowed from the conventional \"path\" part of a URL as defined\nby RFC 3986." properties: headerMatches: - description: "HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match." + description: "HeaderMatches is a list of HTTP headers which must be\npresent and match against the given values. Mismatch field can be used\nto specify what to do when there is no match." items: - description: "HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough." + description: "HeaderMatch extends the HeaderValue for matching requirement of a\nnamed header field against an immediate string, a secret value, or\na regex. If none of the optional fields is present, then the\nheader value is not matched, only presence of the header is enough." properties: mismatch: - description: "Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log." + description: "Mismatch identifies what to do in case there is no match. The default is\nto drop the request. Otherwise the overall rule is still considered as\nmatching, but the mismatches are logged in the access log." enum: - "LOG" - "ADD" @@ -3378,63 +3406,63 @@ spec: minLength: 1 type: "string" secret: - description: "Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no \"Value\" specified, the match will fail." + description: "Secret refers to a secret that contains the value to be matched against.\nThe secret must only contain one entry. If the referred secret does not\nexist, and there is no \"Value\" specified, the match will fail." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" value: - description: "Value matches the exact value of the header. Can be specified either alone or together with \"Secret\"; will be used as the header value if the secret can not be found in the latter case." + description: "Value matches the exact value of the header. Can be specified either\nalone or together with \"Secret\"; will be used as the header value if the\nsecret can not be found in the latter case." type: "string" required: - "name" type: "object" type: "array" headers: - description: "Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present." + description: "Headers is a list of HTTP headers which must be present in the\nrequest. If omitted or empty, requests are allowed regardless of\nheaders present." items: type: "string" type: "array" host: - description: "Host is an extended POSIX regex matched against the host header of a request. Examples: \n - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\\.bar\\.com will only match the host foo.bar.com \n If omitted or empty, the value of the host header is ignored." + description: "Host is an extended POSIX regex matched against the host header of a\nrequest. Examples:\n\n- foo.bar.com will match the host fooXbar.com or foo-bar.com\n- foo\\.bar\\.com will only match the host foo.bar.com\n\nIf omitted or empty, the value of the host header is ignored." format: "idn-hostname" type: "string" method: - description: "Method is an extended POSIX regex matched against the method of a request, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ... \n If omitted or empty, all methods are allowed." + description: "Method is an extended POSIX regex matched against the method of a\nrequest, e.g. \"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", ...\n\nIf omitted or empty, all methods are allowed." type: "string" path: - description: "Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional \"path\" part of a URL as defined by RFC 3986. \n If omitted or empty, all paths are all allowed." + description: "Path is an extended POSIX regex matched against the path of a\nrequest. Currently it can contain characters disallowed from the\nconventional \"path\" part of a URL as defined by RFC 3986.\n\nIf omitted or empty, all paths are all allowed." type: "string" type: "object" type: "array" kafka: description: "Kafka-specific rules." items: - description: "PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages." + description: "PortRule is a list of Kafka protocol constraints. All fields are\noptional, if all fields are empty or missing, the rule will match all\nKafka messages." properties: apiKey: - description: "APIKey is a case-insensitive string matched against the key of a request, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys \n If omitted or empty, and if Role is not specified, then all keys are allowed." + description: "APIKey is a case-insensitive string matched against the key of a\nrequest, e.g. \"produce\", \"fetch\", \"createtopic\", \"deletetopic\", et al\nReference: https://kafka.apache.org/protocol#protocol_api_keys\n\nIf omitted or empty, and if Role is not specified, then all keys are allowed." type: "string" apiVersion: - description: "APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. \n If omitted or empty, all versions are allowed." + description: "APIVersion is the version matched against the api version of the\nKafka message. If set, it has to be a string representing a positive\ninteger.\n\nIf omitted or empty, all versions are allowed." type: "string" clientID: - description: "ClientID is the client identifier as provided in the request. \n From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. \n If omitted or empty, all client identifiers are allowed." + description: "ClientID is the client identifier as provided in the request.\n\nFrom Kafka protocol documentation:\nThis is a user supplied identifier for the client application. The\nuser can use any identifier they like and it will be used when\nlogging errors, monitoring aggregates, etc. For example, one might\nwant to monitor not just the requests per second overall, but the\nnumber coming from each client application (each of which could\nreside on multiple servers). This id acts as a logical grouping\nacross all requests from a particular client.\n\nIf omitted or empty, all client identifiers are allowed." type: "string" role: - description: "Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as \"produce\" or \"consume\". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. \n The following values are supported: - \"produce\": Allow producing to the topics specified in the rule - \"consume\": Allow consuming from the topics specified in the rule \n This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. \n If omitted or empty, and if APIKey is not specified, then all keys are allowed." + description: "Role is a case-insensitive string and describes a group of API keys\nnecessary to perform certain higher-level Kafka operations such as \"produce\"\nor \"consume\". A Role automatically expands into all APIKeys required\nto perform the specified higher-level operation.\n\nThe following values are supported:\n - \"produce\": Allow producing to the topics specified in the rule\n - \"consume\": Allow consuming from the topics specified in the rule\n\nThis field is incompatible with the APIKey field, i.e APIKey and Role\ncannot both be specified in the same rule.\n\nIf omitted or empty, and if APIKey is not specified, then all keys are\nallowed." enum: - "produce" - "consume" type: "string" topic: - description: "Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. \n This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. \n Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. \n If omitted or empty, all topics are allowed." + description: "Topic is the topic name contained in the message. If a Kafka request\ncontains multiple topics, then all topics must be allowed or the\nmessage will be rejected.\n\nThis constraint is ignored if the matched request message type\ndoesn't contain any topic. Maximum size of Topic can be 249\ncharacters as per recent Kafka spec and allowed characters are\na-z, A-Z, 0-9, -, . and _.\n\nOlder Kafka versions had longer topic lengths of 255, but in Kafka 0.10\nversion the length was changed from 255 to 249. For compatibility\nreasons we are using 255.\n\nIf omitted or empty, all topics are allowed." maxLength: 255 type: "string" type: "object" @@ -3444,7 +3472,7 @@ spec: items: additionalProperties: type: "string" - description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect." + description: "PortRuleL7 is a list of key-value pairs interpreted by a L7 protocol as\nprotocol constraints. All fields are optional, if all fields are empty or\nmissing, the rule does not have any effect." type: "object" type: "array" l7proto: @@ -3452,33 +3480,33 @@ spec: type: "string" type: "object" serverNames: - description: "ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake." + description: "ServerNames is a list of allowed TLS SNI values. If not empty, then\nTLS must be present and one of the provided SNIs must be indicated in the\nTLS handshake." items: type: "string" type: "array" terminatingTLS: - description: "TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy." + description: "TerminatingTLS is the TLS context for the connection terminated by\nthe L7 proxy. For egress policy this specifies the server-side TLS\nparameters to be applied on the connections originated from the local\nendpoint and terminated by the L7 proxy. For ingress policy this specifies\nthe server-side TLS parameters to be applied on the connections\noriginated from a remote source and terminated by the L7 proxy." properties: certificate: - description: "Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist." + description: "Certificate is the file name or k8s secret item name for the certificate\nchain. If omitted, 'tls.crt' is assumed, if it exists. If given, the\nitem must exist." type: "string" privateKey: - description: "PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist." + description: "PrivateKey is the file name or k8s secret item name for the private key\nmatching the certificate chain. If omitted, 'tls.key' is assumed, if it\nexists. If given, the item must exist." type: "string" secret: - description: "Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate." + description: "Secret is the secret that contains the certificates and private key for\nthe TLS context.\nBy default, Cilium will search in this secret for the following items:\n - 'ca.crt' - Which represents the trusted CA to verify remote source.\n - 'tls.crt' - Which represents the public key certificate.\n - 'tls.key' - Which represents the private key matching the public key\n certificate." properties: name: description: "Name is the name of the secret." type: "string" namespace: - description: "Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., \"default\")." + description: "Namespace is the namespace in which the secret exists. Context of use\ndetermines the default value if left out (e.g., \"default\")." type: "string" required: - "name" type: "object" trustedCA: - description: "TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist." + description: "TrustedCA is the file name or k8s secret item name for the trusted CA.\nIf omitted, 'ca.crt' is assumed, if it exists. If given, the item must\nexist." type: "string" required: - "secret" @@ -3488,21 +3516,21 @@ spec: type: "object" type: "array" ingressDeny: - description: "IngressDeny is a list of IngressDenyRule which are enforced at ingress. Any rule inserted here will be denied regardless of the allowed ingress rules in the 'ingress' field. If omitted or empty, this rule does not apply at ingress." + description: "IngressDeny is a list of IngressDenyRule which are enforced at ingress.\nAny rule inserted here will be denied regardless of the allowed ingress\nrules in the 'ingress' field.\nIf omitted or empty, this rule does not apply at ingress." items: - description: "IngressDenyRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. \n - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. \n - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. \n - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule." + description: "IngressDenyRule contains all rule types which can be applied at ingress,\ni.e. network traffic that originates outside of the endpoint and\nis entering the endpoint selected by the endpointSelector.\n\n - All members of this structure are optional. If omitted or empty, the\n member will have no effect on the rule.\n\n - If multiple members are set, all of them need to match in order for\n the rule to take effect. The exception to this rule is FromRequires field;\n the effects of any Requires field in any rule will apply to all other\n rules as well.\n\n - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually\n exclusive. Only one of these members may be present within an individual\n rule." properties: fromCIDR: - description: "FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.3.9.1" + description: "FromCIDR is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from. Only connections which\ndo *not* originate from the cluster or from the local host are subject\nto CIDR rules. In order to allow in-cluster connectivity, use the\nFromEndpoints field. This will match on the source IP address of\nincoming connections. Adding a prefix into FromCIDR or into\nFromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are\nallowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.3.9.1" items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" fromCIDRSet: - description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. \n Example: Any endpoint with the label \"app=my-legacy-pet\" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." + description: "FromCIDRSet is a list of IP blocks which the endpoint subject to the\nrule is allowed to receive connections from in addition to FromEndpoints,\nalong with a list of subnets contained within their corresponding IP block\nfrom which traffic should not be allowed.\nThis will match on the source IP address of incoming connections. Adding\na prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is\nequivalent. Overlaps are allowed between FromCIDR and FromCIDRSet.\n\nExample:\nAny endpoint with the label \"app=my-legacy-pet\" is allowed to receive\nconnections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12." items: - description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed." + description: "CIDRRule is a rule that specifies a CIDR prefix to/from which outside\ncommunication is allowed, along with an optional list of subnets within that\nCIDR prefix to/from which outside communication is not allowed." oneOf: - properties: cidr: {} @@ -3518,34 +3546,34 @@ spec: format: "cidr" type: "string" cidrGroupRef: - description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from." + description: "CIDRGroupRef is a reference to a CiliumCIDRGroup object.\nA CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to\nthe rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive\nconnections from." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" except: - description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules." + description: "ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule\nis not allowed to initiate connections to. These CIDR prefixes should be\ncontained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not\nsupported yet.\nThese exceptions are only applied to the Cidr in this CIDRRule, and do not\napply to any other CIDR prefixes in any other CIDRRules." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" type: "array" type: "object" type: "array" fromEndpoints: - description: "FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. \n Example: Any endpoint with the label \"role=backend\" can be consumed by any endpoint carrying the label \"role=frontend\"." + description: "FromEndpoints is a list of endpoints identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule.\n\nExample:\nAny endpoint with the label \"role=backend\" can be consumed by any\nendpoint carrying the label \"role=frontend\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3553,7 +3581,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3570,14 +3598,15 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromEntities: - description: "FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host`" + description: "FromEntities is a list of special entities which the endpoint subject\nto the rule is allowed to receive connections from. Supported entities are\n`world`, `cluster` and `host`" items: - description: "Entity specifies the class of receiver/sender endpoints that do not have individual identities. Entities are used to describe \"outside of cluster\", \"host\", etc." + description: "Entity specifies the class of receiver/sender endpoints that do not have\nindividual identities. Entities are used to describe \"outside of cluster\",\n\"host\", etc." enum: - "all" - "world" @@ -3593,9 +3622,9 @@ spec: type: "string" type: "array" fromGroups: - description: "FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: \n Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX'" + description: "FromGroups is a directive that allows the integration with multiple outside\nproviders. Currently, only AWS is supported, and the rule can select by\nmultiple sub directives:\n\nExample:\nFromGroups:\n- aws:\n securityGroupsIds:\n - 'sg-XXXXXXXXXXXXX'" items: - description: "Groups structure to store all kinds of new integrations that needs a new derivative policy." + description: "Groups structure to store all kinds of new integrations that needs a new\nderivative policy." properties: aws: description: "AWSGroup is an structure that can be used to whitelisting information from AWS integration" @@ -3618,20 +3647,20 @@ spec: type: "object" type: "array" fromNodes: - description: "FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule." + description: "FromNodes is a list of nodes identified by an\nEndpointSelector which are allowed to communicate with the endpoint\nsubject to the rule." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3639,7 +3668,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3656,25 +3685,26 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" fromRequires: - description: "FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. \n Example: Any Endpoint with the label \"team=A\" requires consuming endpoint to also carry the label \"team=A\"." + description: "FromRequires is a list of additional constraints which must be met\nin order for the selected endpoints to be reachable. These\nadditional constraints do no by itself grant access privileges and\nmust always be accompanied with at least one matching FromEndpoints.\n\nExample:\nAny Endpoint with the label \"team=A\" requires consuming endpoint\nto also carry the label \"team=A\"." items: description: "EndpointSelector is a wrapper for k8s LabelSelector." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3682,7 +3712,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3699,12 +3729,13 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "array" icmps: - description: "ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can not accept incoming type 8 ICMP connections." + description: "ICMPs is a list of ICMP rule identified by type number\nwhich the endpoint subject to the rule is not allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can not accept incoming\ntype 8 ICMP connections." items: description: "ICMPRule is a list of ICMP fields." properties: @@ -3715,7 +3746,7 @@ spec: properties: family: default: "IPv4" - description: "Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default." + description: "Family is a IP address version.\nCurrently, we support `IPv4` and `IPv6`.\n`IPv4` is set as default." enum: - "IPv4" - "IPv6" @@ -3724,7 +3755,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply" + description: "Type is a ICMP-type.\nIt should be an 8bit code (0-255), or it's CamelCase name (for example, \"EchoReply\").\nAllowed ICMP types are:\n Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest |\n\t\t RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem |\n\t\t\t Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply\n Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem |\n\t\t\t EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport |\n\t\t\t MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation |\n\t\t\t NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery |\n\t\t\t ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement |\n\t\t\t HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation |\n\t\t\t MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix |\n\t\t\t ExtendedEchoRequest | ExtendedEchoReply" pattern: "^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|EchoReply|DestinationUnreachable|Redirect|Echo|RouterAdvertisement|RouterSelection|TimeExceeded|ParameterProblem|Timestamp|TimestampReply|Photuris|ExtendedEchoRequest|ExtendedEcho Reply|PacketTooBig|ParameterProblem|EchoRequest|MulticastListenerQuery|MulticastListenerReport|MulticastListenerDone|RouterSolicitation|RouterAdvertisement|NeighborSolicitation|NeighborAdvertisement|RedirectMessage|RouterRenumbering|ICMPNodeInformationQuery|ICMPNodeInformationResponse|InverseNeighborDiscoverySolicitation|InverseNeighborDiscoveryAdvertisement|HomeAgentAddressDiscoveryRequest|HomeAgentAddressDiscoveryReply|MobilePrefixSolicitation|MobilePrefixAdvertisement|DuplicateAddressRequestCodeSuffix|DuplicateAddressConfirmationCodeSuffix)$" x-kubernetes-int-or-string: true required: @@ -3735,9 +3766,9 @@ spec: type: "object" type: "array" toPorts: - description: "ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to receive connections on. \n Example: Any endpoint with the label \"app=httpd\" can not accept incoming connections on port 80/tcp." + description: "ToPorts is a list of destination ports identified by port number and\nprotocol which the endpoint subject to the rule is not allowed to\nreceive connections on.\n\nExample:\nAny endpoint with the label \"app=httpd\" can not accept incoming\nconnections on port 80/tcp." items: - description: "PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies." + description: "PortDenyRule is a list of ports/protocol that should be used for deny\npolicies. This structure lacks the L7Rules since it's not supported in deny\npolicies." properties: ports: description: "Ports is a list of L4 port/protocol" @@ -3751,11 +3782,11 @@ spec: minimum: 0.0 type: "integer" port: - description: "Port can be an L4 port number, or a name in the form of \"http\" or \"http-8080\"." + description: "Port can be an L4 port number, or a name in the form of \"http\"\nor \"http-8080\"." pattern: "^(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[0-9]{1,4})|([a-zA-Z0-9]-?)*[a-zA-Z](-?[a-zA-Z0-9])*$" type: "string" protocol: - description: "Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\" \n Matching on ICMP is not supported. \n Named port specified for a container may narrow this down, but may not contradict this." + description: "Protocol is the L4 protocol. If omitted or empty, any protocol\nmatches. Accepted values: \"TCP\", \"UDP\", \"SCTP\", \"ANY\"\n\nMatching on ICMP is not supported.\n\nNamed port specified for a container may narrow this down, but may not\ncontradict this." enum: - "TCP" - "UDP" @@ -3771,7 +3802,7 @@ spec: type: "object" type: "array" labels: - description: "Labels is a list of optional strings which can be used to re-identify the rule or to store metadata. It is possible to lookup or delete strings based on labels. Labels are not required to be unique, multiple rules can have overlapping or identical labels." + description: "Labels is a list of optional strings which can be used to\nre-identify the rule or to store metadata. It is possible to lookup\nor delete strings based on labels. Labels are not required to be\nunique, multiple rules can have overlapping or identical labels." items: description: "Label is the Cilium's representation of a container label." properties: @@ -3787,18 +3818,18 @@ spec: type: "object" type: "array" nodeSelector: - description: "NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies." + description: "NodeSelector selects all nodes which should be subject to this rule.\nEndpointSelector and NodeSelector cannot be both empty and are mutually\nexclusive. Can only be used in CiliumClusterwideNetworkPolicies." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -3806,7 +3837,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -3823,9 +3854,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "object" type: "array" status: @@ -3860,32 +3892,32 @@ spec: x-kubernetes-list-type: "map" derivativePolicies: additionalProperties: - description: "CiliumNetworkPolicyNodeStatus is the status of a Cilium policy rule for a specific node." + description: "CiliumNetworkPolicyNodeStatus is the status of a Cilium policy rule for a\nspecific node." properties: annotations: additionalProperties: type: "string" - description: "Annotations corresponds to the Annotations in the ObjectMeta of the CNP that have been realized on the node for CNP. That is, if a CNP has been imported and has been assigned annotation X=Y by the user, Annotations in CiliumNetworkPolicyNodeStatus will be X=Y once the CNP that was imported corresponding to Annotation X=Y has been realized on the node." + description: "Annotations corresponds to the Annotations in the ObjectMeta of the CNP\nthat have been realized on the node for CNP. That is, if a CNP has been\nimported and has been assigned annotation X=Y by the user,\nAnnotations in CiliumNetworkPolicyNodeStatus will be X=Y once the\nCNP that was imported corresponding to Annotation X=Y has been realized on\nthe node." type: "object" enforcing: - description: "Enforcing is set to true once all endpoints present at the time the policy has been imported are enforcing this policy." + description: "Enforcing is set to true once all endpoints present at the time the\npolicy has been imported are enforcing this policy." type: "boolean" error: - description: "Error describes any error that occurred when parsing or importing the policy, or realizing the policy for the endpoints to which it applies on the node." + description: "Error describes any error that occurred when parsing or importing the\npolicy, or realizing the policy for the endpoints to which it applies\non the node." type: "string" lastUpdated: description: "LastUpdated contains the last time this status was updated" format: "date-time" type: "string" localPolicyRevision: - description: "Revision is the policy revision of the repository which first implemented this policy." + description: "Revision is the policy revision of the repository which first implemented\nthis policy." format: "int64" type: "integer" ok: - description: "OK is true when the policy has been parsed and imported successfully into the in-memory policy repository on the node." + description: "OK is true when the policy has been parsed and imported successfully\ninto the in-memory policy repository on the node." type: "boolean" type: "object" - description: "DerivativePolicies is the status of all policies derived from the Cilium policy" + description: "DerivativePolicies is the status of all policies derived from the Cilium\npolicy" type: "object" type: "object" required: @@ -3895,9 +3927,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumnodes.yaml b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumnodes.yaml index 83dd48d3f..06ab3b1e4 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2/ciliumnodes.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2/ciliumnodes.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumnodes.cilium.io" spec: group: "cilium.io" @@ -34,13 +34,13 @@ spec: name: "v2" schema: openAPIV3Schema: - description: "CiliumNode represents a node managed by Cilium. It contains a specification to control various node specific configuration aspects and a status section to represent the status of the node." + description: "CiliumNode represents a node managed by Cilium. It contains a specification\nto control various node specific configuration aspects and a status section\nto represent the status of the node." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -64,7 +64,7 @@ spec: description: "AlibabaCloud is the AlibabaCloud IPAM specific configuration." properties: availability-zone: - description: "AvailabilityZone is the availability zone to use when allocating ENIs." + description: "AvailabilityZone is the availability zone to use when allocating\nENIs." type: "string" cidr-block: description: "CIDRBlock is vpc ipv4 CIDR" @@ -75,10 +75,10 @@ spec: security-group-tags: additionalProperties: type: "string" - description: "SecurityGroupTags is the list of tags to use when evaluating which security groups to use for the ENI." + description: "SecurityGroupTags is the list of tags to use when evaluating which\nsecurity groups to use for the ENI." type: "object" security-groups: - description: "SecurityGroups is the list of security groups to attach to any ENI that is created and attached to the instance." + description: "SecurityGroups is the list of security groups to attach to any ENI\nthat is created and attached to the instance." items: type: "string" type: "array" @@ -88,7 +88,7 @@ spec: vswitch-tags: additionalProperties: type: "string" - description: "VSwitchTags is the list of tags to use when evaluating which vSwitch to use for the ENI." + description: "VSwitchTags is the list of tags to use when evaluating which\nvSwitch to use for the ENI." type: "object" vswitches: description: "VSwitches is the ID of vSwitch available for ENI" @@ -100,7 +100,7 @@ spec: description: "Azure is the Azure IPAM specific configuration." properties: interface-name: - description: "InterfaceName is the name of the interface the cilium-operator will use to allocate all the IPs on" + description: "InterfaceName is the name of the interface the cilium-operator\nwill use to allocate all the IPs on" type: "string" type: "object" bootid: @@ -110,80 +110,80 @@ spec: description: "Encryption is the encryption configuration of the node." properties: key: - description: "Key is the index to the key to use for encryption or 0 if encryption is disabled." + description: "Key is the index to the key to use for encryption or 0 if encryption is\ndisabled." type: "integer" type: "object" eni: description: "ENI is the AWS ENI specific configuration." properties: availability-zone: - description: "AvailabilityZone is the availability zone to use when allocating ENIs." + description: "AvailabilityZone is the availability zone to use when allocating\nENIs." type: "string" delete-on-termination: - description: "DeleteOnTermination defines that the ENI should be deleted when the associated instance is terminated. If the parameter is not set the default behavior is to delete the ENI on instance termination." + description: "DeleteOnTermination defines that the ENI should be deleted when the\nassociated instance is terminated. If the parameter is not set the\ndefault behavior is to delete the ENI on instance termination." type: "boolean" disable-prefix-delegation: - description: "DisablePrefixDelegation determines whether ENI prefix delegation should be disabled on this node." + description: "DisablePrefixDelegation determines whether ENI prefix delegation should be\ndisabled on this node." type: "boolean" exclude-interface-tags: additionalProperties: type: "string" - description: "ExcludeInterfaceTags is the list of tags to use when excluding ENIs for Cilium IP allocation. Any interface matching this set of tags will not be managed by Cilium." + description: "ExcludeInterfaceTags is the list of tags to use when excluding ENIs for\nCilium IP allocation. Any interface matching this set of tags will not\nbe managed by Cilium." type: "object" first-interface-index: - description: "FirstInterfaceIndex is the index of the first ENI to use for IP allocation, e.g. if the node has eth0, eth1, eth2 and FirstInterfaceIndex is set to 1, then only eth1 and eth2 will be used for IP allocation, eth0 will be ignored for PodIP allocation." + description: "FirstInterfaceIndex is the index of the first ENI to use for IP\nallocation, e.g. if the node has eth0, eth1, eth2 and\nFirstInterfaceIndex is set to 1, then only eth1 and eth2 will be\nused for IP allocation, eth0 will be ignored for PodIP allocation." minimum: 0.0 type: "integer" instance-id: - description: "InstanceID is the AWS InstanceId of the node. The InstanceID is used to retrieve AWS metadata for the node. \n OBSOLETE: This field is obsolete, please use Spec.InstanceID" + description: "InstanceID is the AWS InstanceId of the node. The InstanceID is used\nto retrieve AWS metadata for the node.\n\nOBSOLETE: This field is obsolete, please use Spec.InstanceID" type: "string" instance-type: description: "InstanceType is the AWS EC2 instance type, e.g. \"m5.large\"" type: "string" max-above-watermark: - description: "MaxAboveWatermark is the maximum number of addresses to allocate beyond the addresses needed to reach the PreAllocate watermark. Going above the watermark can help reduce the number of API calls to allocate IPs, e.g. when a new ENI is allocated, as many secondary IPs as possible are allocated. Limiting the amount can help reduce waste of IPs. \n OBSOLETE: This field is obsolete, please use Spec.IPAM.MaxAboveWatermark" + description: "MaxAboveWatermark is the maximum number of addresses to allocate\nbeyond the addresses needed to reach the PreAllocate watermark.\nGoing above the watermark can help reduce the number of API calls to\nallocate IPs, e.g. when a new ENI is allocated, as many secondary\nIPs as possible are allocated. Limiting the amount can help reduce\nwaste of IPs.\n\nOBSOLETE: This field is obsolete, please use Spec.IPAM.MaxAboveWatermark" minimum: 0.0 type: "integer" min-allocate: - description: "MinAllocate is the minimum number of IPs that must be allocated when the node is first bootstrapped. It defines the minimum base socket of addresses that must be available. After reaching this watermark, the PreAllocate and MaxAboveWatermark logic takes over to continue allocating IPs. \n OBSOLETE: This field is obsolete, please use Spec.IPAM.MinAllocate" + description: "MinAllocate is the minimum number of IPs that must be allocated when\nthe node is first bootstrapped. It defines the minimum base socket\nof addresses that must be available. After reaching this watermark,\nthe PreAllocate and MaxAboveWatermark logic takes over to continue\nallocating IPs.\n\nOBSOLETE: This field is obsolete, please use Spec.IPAM.MinAllocate" minimum: 0.0 type: "integer" node-subnet-id: - description: "NodeSubnetID is the subnet of the primary ENI the instance was brought up with. It is used as a sensible default subnet to create ENIs in." + description: "NodeSubnetID is the subnet of the primary ENI the instance was brought up\nwith. It is used as a sensible default subnet to create ENIs in." type: "string" pre-allocate: - description: "PreAllocate defines the number of IP addresses that must be available for allocation in the IPAMspec. It defines the buffer of addresses available immediately without requiring cilium-operator to get involved. \n OBSOLETE: This field is obsolete, please use Spec.IPAM.PreAllocate" + description: "PreAllocate defines the number of IP addresses that must be\navailable for allocation in the IPAMspec. It defines the buffer of\naddresses available immediately without requiring cilium-operator to\nget involved.\n\nOBSOLETE: This field is obsolete, please use Spec.IPAM.PreAllocate" minimum: 0.0 type: "integer" security-group-tags: additionalProperties: type: "string" - description: "SecurityGroupTags is the list of tags to use when evaliating what AWS security groups to use for the ENI." + description: "SecurityGroupTags is the list of tags to use when evaliating what\nAWS security groups to use for the ENI." type: "object" security-groups: - description: "SecurityGroups is the list of security groups to attach to any ENI that is created and attached to the instance." + description: "SecurityGroups is the list of security groups to attach to any ENI\nthat is created and attached to the instance." items: type: "string" type: "array" subnet-ids: - description: "SubnetIDs is the list of subnet ids to use when evaluating what AWS subnets to use for ENI and IP allocation." + description: "SubnetIDs is the list of subnet ids to use when evaluating what AWS\nsubnets to use for ENI and IP allocation." items: type: "string" type: "array" subnet-tags: additionalProperties: type: "string" - description: "SubnetTags is the list of tags to use when evaluating what AWS subnets to use for ENI and IP allocation." + description: "SubnetTags is the list of tags to use when evaluating what AWS\nsubnets to use for ENI and IP allocation." type: "object" use-primary-address: - description: "UsePrimaryAddress determines whether an ENI's primary address should be available for allocations on the node" + description: "UsePrimaryAddress determines whether an ENI's primary address\nshould be available for allocations on the node" type: "boolean" vpc-id: description: "VpcID is the VPC ID to use when allocating ENIs." type: "string" type: "object" health: - description: "HealthAddressing is the addressing information for health connectivity checking." + description: "HealthAddressing is the addressing information for health connectivity\nchecking." properties: ipv4: description: "IPv4 is the IPv4 address of the IPv4 health endpoint." @@ -201,61 +201,61 @@ spec: type: "string" type: "object" instance-id: - description: "InstanceID is the identifier of the node. This is different from the node name which is typically the FQDN of the node. The InstanceID typically refers to the identifier used by the cloud provider or some other means of identification." + description: "InstanceID is the identifier of the node. This is different from the\nnode name which is typically the FQDN of the node. The InstanceID\ntypically refers to the identifier used by the cloud provider or\nsome other means of identification." type: "string" ipam: - description: "IPAM is the address management specification. This section can be populated by a user or it can be automatically populated by an IPAM operator." + description: "IPAM is the address management specification. This section can be\npopulated by a user or it can be automatically populated by an IPAM\noperator." properties: ipv6-pool: additionalProperties: - description: "AllocationIP is an IP which is available for allocation, or already has been allocated" + description: "AllocationIP is an IP which is available for allocation, or already\nhas been allocated" properties: owner: - description: "Owner is the owner of the IP. This field is set if the IP has been allocated. It will be set to the pod name or another identifier representing the usage of the IP \n The owner field is left blank for an entry in Spec.IPAM.Pool and filled out as the IP is used and also added to Status.IPAM.Used." + description: "Owner is the owner of the IP. This field is set if the IP has been\nallocated. It will be set to the pod name or another identifier\nrepresenting the usage of the IP\n\nThe owner field is left blank for an entry in Spec.IPAM.Pool and\nfilled out as the IP is used and also added to Status.IPAM.Used." type: "string" resource: - description: "Resource is set for both available and allocated IPs, it represents what resource the IP is associated with, e.g. in combination with AWS ENI, this will refer to the ID of the ENI" + description: "Resource is set for both available and allocated IPs, it represents\nwhat resource the IP is associated with, e.g. in combination with\nAWS ENI, this will refer to the ID of the ENI" type: "string" type: "object" - description: "IPv6Pool is the list of IPv6 addresses available to the node for allocation. When an IPv6 address is used, it will remain on this list but will be added to Status.IPAM.IPv6Used" + description: "IPv6Pool is the list of IPv6 addresses available to the node for allocation.\nWhen an IPv6 address is used, it will remain on this list but will be added to\nStatus.IPAM.IPv6Used" type: "object" max-above-watermark: - description: "MaxAboveWatermark is the maximum number of addresses to allocate beyond the addresses needed to reach the PreAllocate watermark. Going above the watermark can help reduce the number of API calls to allocate IPs, e.g. when a new ENI is allocated, as many secondary IPs as possible are allocated. Limiting the amount can help reduce waste of IPs." + description: "MaxAboveWatermark is the maximum number of addresses to allocate\nbeyond the addresses needed to reach the PreAllocate watermark.\nGoing above the watermark can help reduce the number of API calls to\nallocate IPs, e.g. when a new ENI is allocated, as many secondary\nIPs as possible are allocated. Limiting the amount can help reduce\nwaste of IPs." minimum: 0.0 type: "integer" max-allocate: - description: "MaxAllocate is the maximum number of IPs that can be allocated to the node. When the current amount of allocated IPs will approach this value, the considered value for PreAllocate will decrease down to 0 in order to not attempt to allocate more addresses than defined." + description: "MaxAllocate is the maximum number of IPs that can be allocated to the\nnode. When the current amount of allocated IPs will approach this value,\nthe considered value for PreAllocate will decrease down to 0 in order to\nnot attempt to allocate more addresses than defined." minimum: 0.0 type: "integer" min-allocate: - description: "MinAllocate is the minimum number of IPs that must be allocated when the node is first bootstrapped. It defines the minimum base socket of addresses that must be available. After reaching this watermark, the PreAllocate and MaxAboveWatermark logic takes over to continue allocating IPs." + description: "MinAllocate is the minimum number of IPs that must be allocated when\nthe node is first bootstrapped. It defines the minimum base socket\nof addresses that must be available. After reaching this watermark,\nthe PreAllocate and MaxAboveWatermark logic takes over to continue\nallocating IPs." minimum: 0.0 type: "integer" podCIDRs: - description: "PodCIDRs is the list of CIDRs available to the node for allocation. When an IP is used, the IP will be added to Status.IPAM.Used" + description: "PodCIDRs is the list of CIDRs available to the node for allocation.\nWhen an IP is used, the IP will be added to Status.IPAM.Used" items: type: "string" type: "array" pool: additionalProperties: - description: "AllocationIP is an IP which is available for allocation, or already has been allocated" + description: "AllocationIP is an IP which is available for allocation, or already\nhas been allocated" properties: owner: - description: "Owner is the owner of the IP. This field is set if the IP has been allocated. It will be set to the pod name or another identifier representing the usage of the IP \n The owner field is left blank for an entry in Spec.IPAM.Pool and filled out as the IP is used and also added to Status.IPAM.Used." + description: "Owner is the owner of the IP. This field is set if the IP has been\nallocated. It will be set to the pod name or another identifier\nrepresenting the usage of the IP\n\nThe owner field is left blank for an entry in Spec.IPAM.Pool and\nfilled out as the IP is used and also added to Status.IPAM.Used." type: "string" resource: - description: "Resource is set for both available and allocated IPs, it represents what resource the IP is associated with, e.g. in combination with AWS ENI, this will refer to the ID of the ENI" + description: "Resource is set for both available and allocated IPs, it represents\nwhat resource the IP is associated with, e.g. in combination with\nAWS ENI, this will refer to the ID of the ENI" type: "string" type: "object" - description: "Pool is the list of IPv4 addresses available to the node for allocation. When an IPv4 address is used, it will remain on this list but will be added to Status.IPAM.Used" + description: "Pool is the list of IPv4 addresses available to the node for allocation.\nWhen an IPv4 address is used, it will remain on this list but will be added to\nStatus.IPAM.Used" type: "object" pools: description: "Pools contains the list of assigned IPAM pools for this node." properties: allocated: - description: "Allocated contains the list of pooled CIDR assigned to this node. The operator will add new pod CIDRs to this field, whereas the agent will remove CIDRs it has released." + description: "Allocated contains the list of pooled CIDR assigned to this node. The\noperator will add new pod CIDRs to this field, whereas the agent will\nremove CIDRs it has released." items: - description: "IPAMPoolAllocation describes an allocation of an IPAM pool from the operator to the node. It contains the assigned PodCIDRs allocated from this pool" + description: "IPAMPoolAllocation describes an allocation of an IPAM pool from the operator to the\nnode. It contains the assigned PodCIDRs allocated from this pool" properties: cidrs: description: "CIDRs contains a list of pod CIDRs currently allocated from this pool" @@ -273,17 +273,17 @@ spec: type: "object" type: "array" requested: - description: "Requested contains a list of IPAM pool requests, i.e. indicates how many addresses this node requests out of each pool listed here. This field is owned and written to by cilium-agent and read by the operator." + description: "Requested contains a list of IPAM pool requests, i.e. indicates how many\naddresses this node requests out of each pool listed here. This field\nis owned and written to by cilium-agent and read by the operator." items: properties: needed: - description: "Needed indicates how many IPs out of the above Pool this node requests from the operator. The operator runs a reconciliation loop to ensure each node always has enough PodCIDRs allocated in each pool to fulfill the requested number of IPs here." + description: "Needed indicates how many IPs out of the above Pool this node requests\nfrom the operator. The operator runs a reconciliation loop to ensure each\nnode always has enough PodCIDRs allocated in each pool to fulfill the\nrequested number of IPs here." properties: ipv4-addrs: - description: "IPv4Addrs contains the number of requested IPv4 addresses out of a given pool" + description: "IPv4Addrs contains the number of requested IPv4 addresses out of a given\npool" type: "integer" ipv6-addrs: - description: "IPv6Addrs contains the number of requested IPv6 addresses out of a given pool" + description: "IPv6Addrs contains the number of requested IPv6 addresses out of a given\npool" type: "integer" type: "object" pool: @@ -296,7 +296,7 @@ spec: type: "array" type: "object" pre-allocate: - description: "PreAllocate defines the number of IP addresses that must be available for allocation in the IPAMspec. It defines the buffer of addresses available immediately without requiring cilium-operator to get involved." + description: "PreAllocate defines the number of IP addresses that must be\navailable for allocation in the IPAMspec. It defines the buffer of\naddresses available immediately without requiring cilium-operator to\nget involved." minimum: 0.0 type: "integer" type: "object" @@ -306,7 +306,7 @@ spec: type: "integer" type: "object" status: - description: "Status defines the realized specification/configuration and status of the node." + description: "Status defines the realized specification/configuration and status\nof the node." properties: alibaba-cloud: description: "AlibabaCloud is the AlibabaCloud specific status of the node." @@ -398,10 +398,10 @@ spec: description: "AzureInterface represents an Azure Interface" properties: GatewayIP: - description: "GatewayIP is the interface's subnet's default route \n OBSOLETE: This field is obsolete, please use Gateway field instead." + description: "GatewayIP is the interface's subnet's default route\n\nOBSOLETE: This field is obsolete, please use Gateway field instead." type: "string" addresses: - description: "Addresses is the list of all IPs associated with the interface, including all secondary addresses" + description: "Addresses is the list of all IPs associated with the interface,\nincluding all secondary addresses" items: description: "AzureAddress is an IP address assigned to an AzureInterface" properties: @@ -445,7 +445,7 @@ spec: properties: enis: additionalProperties: - description: "ENI represents an AWS Elastic Network Interface \n More details: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html" + description: "ENI represents an AWS Elastic Network Interface\n\nMore details:\nhttps://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html" properties: addresses: description: "Addresses is the list of all secondary IPs associated with the ENI" @@ -468,7 +468,7 @@ spec: description: "MAC is the mac address of the ENI" type: "string" number: - description: "Number is the interface index, it used in combination with FirstInterfaceIndex" + description: "Number is the interface index, it used in combination with\nFirstInterfaceIndex" type: "integer" prefixes: description: "Prefixes is the list of all /28 prefixes associated with the ENI" @@ -493,7 +493,7 @@ spec: tags: additionalProperties: type: "string" - description: "Tags is the set of tags of the ENI. Used to detect ENIs which should not be managed by Cilium" + description: "Tags is the set of tags of the ENI. Used to detect ENIs which should\nnot be managed by Cilium" type: "object" vpc: description: "VPC is the VPC information to which the ENI is attached to" @@ -519,16 +519,16 @@ spec: properties: ipv6-used: additionalProperties: - description: "AllocationIP is an IP which is available for allocation, or already has been allocated" + description: "AllocationIP is an IP which is available for allocation, or already\nhas been allocated" properties: owner: - description: "Owner is the owner of the IP. This field is set if the IP has been allocated. It will be set to the pod name or another identifier representing the usage of the IP \n The owner field is left blank for an entry in Spec.IPAM.Pool and filled out as the IP is used and also added to Status.IPAM.Used." + description: "Owner is the owner of the IP. This field is set if the IP has been\nallocated. It will be set to the pod name or another identifier\nrepresenting the usage of the IP\n\nThe owner field is left blank for an entry in Spec.IPAM.Pool and\nfilled out as the IP is used and also added to Status.IPAM.Used." type: "string" resource: - description: "Resource is set for both available and allocated IPs, it represents what resource the IP is associated with, e.g. in combination with AWS ENI, this will refer to the ID of the ENI" + description: "Resource is set for both available and allocated IPs, it represents\nwhat resource the IP is associated with, e.g. in combination with\nAWS ENI, this will refer to the ID of the ENI" type: "string" type: "object" - description: "IPv6Used lists all IPv6 addresses out of Spec.IPAM.IPv6Pool which have been allocated and are in use." + description: "IPv6Used lists all IPv6 addresses out of Spec.IPAM.IPv6Pool which have been\nallocated and are in use." type: "object" operator-status: description: "Operator is the Operator status of the node" @@ -559,7 +559,7 @@ spec: - "do-not-release" - "released" type: "string" - description: "ReleaseIPs tracks the state for every IPv4 address considered for release. The value can be one of the following strings: * marked-for-release : Set by operator as possible candidate for IP * ready-for-release : Acknowledged as safe to release by agent * do-not-release : IP already in use / not owned by the node. Set by agent * released : IP successfully released. Set by operator" + description: "ReleaseIPs tracks the state for every IPv4 address considered for release.\nThe value can be one of the following strings:\n* marked-for-release : Set by operator as possible candidate for IP\n* ready-for-release : Acknowledged as safe to release by agent\n* do-not-release : IP already in use / not owned by the node. Set by agent\n* released : IP successfully released. Set by operator" type: "object" release-ipv6s: additionalProperties: @@ -570,20 +570,20 @@ spec: - "do-not-release" - "released" type: "string" - description: "ReleaseIPv6s tracks the state for every IPv6 address considered for release. The value can be one of the following strings: * marked-for-release : Set by operator as possible candidate for IP * ready-for-release : Acknowledged as safe to release by agent * do-not-release : IP already in use / not owned by the node. Set by agent * released : IP successfully released. Set by operator" + description: "ReleaseIPv6s tracks the state for every IPv6 address considered for release.\nThe value can be one of the following strings:\n* marked-for-release : Set by operator as possible candidate for IP\n* ready-for-release : Acknowledged as safe to release by agent\n* do-not-release : IP already in use / not owned by the node. Set by agent\n* released : IP successfully released. Set by operator" type: "object" used: additionalProperties: - description: "AllocationIP is an IP which is available for allocation, or already has been allocated" + description: "AllocationIP is an IP which is available for allocation, or already\nhas been allocated" properties: owner: - description: "Owner is the owner of the IP. This field is set if the IP has been allocated. It will be set to the pod name or another identifier representing the usage of the IP \n The owner field is left blank for an entry in Spec.IPAM.Pool and filled out as the IP is used and also added to Status.IPAM.Used." + description: "Owner is the owner of the IP. This field is set if the IP has been\nallocated. It will be set to the pod name or another identifier\nrepresenting the usage of the IP\n\nThe owner field is left blank for an entry in Spec.IPAM.Pool and\nfilled out as the IP is used and also added to Status.IPAM.Used." type: "string" resource: - description: "Resource is set for both available and allocated IPs, it represents what resource the IP is associated with, e.g. in combination with AWS ENI, this will refer to the ID of the ENI" + description: "Resource is set for both available and allocated IPs, it represents\nwhat resource the IP is associated with, e.g. in combination with\nAWS ENI, this will refer to the ID of the ENI" type: "string" type: "object" - description: "Used lists all IPv4 addresses out of Spec.IPAM.Pool which have been allocated and are in use." + description: "Used lists all IPv4 addresses out of Spec.IPAM.Pool which have been allocated\nand are in use." type: "object" type: "object" type: "object" @@ -595,9 +595,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumbgppeeringpolicies.yaml b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumbgppeeringpolicies.yaml index e3bab998d..4d41674d4 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumbgppeeringpolicies.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumbgppeeringpolicies.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumbgppeeringpolicies.cilium.io" spec: group: "cilium.io" @@ -25,13 +25,13 @@ spec: name: "v2alpha1" schema: openAPIV3Schema: - description: "CiliumBGPPeeringPolicy is a Kubernetes third-party resource for instructing Cilium's BGP control plane to create virtual BGP routers." + description: "CiliumBGPPeeringPolicy is a Kubernetes third-party resource for instructing\nCilium's BGP control plane to create virtual BGP routers." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -39,18 +39,18 @@ spec: description: "Spec is a human readable description of a BGP peering policy" properties: nodeSelector: - description: "NodeSelector selects a group of nodes where this BGP Peering Policy applies. \n If empty / nil this policy applies to all nodes." + description: "NodeSelector selects a group of nodes where this BGP Peering\nPolicy applies.\n\nIf empty / nil this policy applies to all nodes." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -58,7 +58,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -75,20 +75,21 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" virtualRouters: - description: "A list of CiliumBGPVirtualRouter(s) which instructs the BGP control plane how to instantiate virtual BGP routers." + description: "A list of CiliumBGPVirtualRouter(s) which instructs\nthe BGP control plane how to instantiate virtual BGP routers." items: description: "CiliumBGPVirtualRouter defines a discrete BGP virtual router configuration." properties: exportPodCIDR: default: false - description: "ExportPodCIDR determines whether to export the Node's private CIDR block to the configured neighbors." + description: "ExportPodCIDR determines whether to export the Node's private CIDR block\nto the configured neighbors." type: "boolean" localASN: - description: "LocalASN is the ASN of this virtual router. Supports extended 32bit ASNs" + description: "LocalASN is the ASN of this virtual router.\nSupports extended 32bit ASNs" format: "int64" maximum: 4294967295.0 minimum: 0.0 @@ -96,34 +97,34 @@ spec: neighbors: description: "Neighbors is a list of neighboring BGP peers for this virtual router" items: - description: "CiliumBGPNeighbor is a neighboring peer for use in a CiliumBGPVirtualRouter configuration." + description: "CiliumBGPNeighbor is a neighboring peer for use in a\nCiliumBGPVirtualRouter configuration." properties: advertisedPathAttributes: - description: "AdvertisedPathAttributes can be used to apply additional path attributes to selected routes when advertising them to the peer. If empty / nil, no additional path attributes are advertised." + description: "AdvertisedPathAttributes can be used to apply additional path attributes\nto selected routes when advertising them to the peer.\nIf empty / nil, no additional path attributes are advertised." items: - description: "CiliumBGPPathAttributes can be used to apply additional path attributes to matched routes when advertising them to a BGP peer." + description: "CiliumBGPPathAttributes can be used to apply additional path attributes\nto matched routes when advertising them to a BGP peer." properties: communities: - description: "Communities defines a set of community values advertised in the supported BGP Communities path attributes. If nil / not set, no BGP Communities path attribute will be advertised." + description: "Communities defines a set of community values advertised in the supported BGP Communities path attributes.\nIf nil / not set, no BGP Communities path attribute will be advertised." properties: large: description: "Large holds a list of the BGP Large Communities Attribute (RFC 8092) values." items: - description: "BGPLargeCommunity type represents a value of the BGP Large Communities Attribute (RFC 8092), as three 4-byte decimal numbers separated by colons." + description: "BGPLargeCommunity type represents a value of the BGP Large Communities Attribute (RFC 8092),\nas three 4-byte decimal numbers separated by colons." pattern: "^([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5]):([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5]):([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5])$" type: "string" type: "array" standard: description: "Standard holds a list of \"standard\" 32-bit BGP Communities Attribute (RFC 1997) values defined as numeric values." items: - description: "BGPStandardCommunity type represents a value of the \"standard\" 32-bit BGP Communities Attribute (RFC 1997) as a 4-byte decimal number or two 2-byte decimal numbers separated by a colon (<0-65535>:<0-65535>). For example, no-export community value is 65553:65281." + description: "BGPStandardCommunity type represents a value of the \"standard\" 32-bit BGP Communities Attribute (RFC 1997)\nas a 4-byte decimal number or two 2-byte decimal numbers separated by a colon (<0-65535>:<0-65535>).\nFor example, no-export community value is 65553:65281." pattern: "^([0-9]|[1-9][0-9]{1,8}|[1-3][0-9]{9}|4[01][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[01][0-9]{2}|42949672[0-8][0-9]|429496729[0-5])$|^([0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]):([0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])$" type: "string" type: "array" wellKnown: - description: "WellKnown holds a list \"standard\" 32-bit BGP Communities Attribute (RFC 1997) values defined as well-known string aliases to their numeric values." + description: "WellKnown holds a list \"standard\" 32-bit BGP Communities Attribute (RFC 1997) values defined as\nwell-known string aliases to their numeric values." items: - description: "BGPWellKnownCommunity type represents a value of the \"standard\" 32-bit BGP Communities Attribute (RFC 1997) as a well-known string alias to its numeric value. Allowed values and their mapping to the numeric values: \n internet = 0x00000000 (0:0) planned-shut = 0xffff0000 (65535:0) accept-own = 0xffff0001 (65535:1) route-filter-translated-v4 = 0xffff0002 (65535:2) route-filter-v4 = 0xffff0003 (65535:3) route-filter-translated-v6 = 0xffff0004 (65535:4) route-filter-v6 = 0xffff0005 (65535:5) llgr-stale = 0xffff0006 (65535:6) no-llgr = 0xffff0007 (65535:7) blackhole = 0xffff029a (65535:666) no-export = 0xffffff01\t(65535:65281) no-advertise = 0xffffff02 (65535:65282) no-export-subconfed = 0xffffff03 (65535:65283) no-peer = 0xffffff04 (65535:65284)" + description: "BGPWellKnownCommunity type represents a value of the \"standard\" 32-bit BGP Communities Attribute (RFC 1997)\nas a well-known string alias to its numeric value. Allowed values and their mapping to the numeric values:\n\n\tinternet = 0x00000000 (0:0)\n\tplanned-shut = 0xffff0000 (65535:0)\n\taccept-own = 0xffff0001 (65535:1)\n\troute-filter-translated-v4 = 0xffff0002 (65535:2)\n\troute-filter-v4 = 0xffff0003 (65535:3)\n\troute-filter-translated-v6 = 0xffff0004 (65535:4)\n\troute-filter-v6 = 0xffff0005 (65535:5)\n\tllgr-stale = 0xffff0006 (65535:6)\n\tno-llgr = 0xffff0007 (65535:7)\n\tblackhole = 0xffff029a (65535:666)\n\tno-export = 0xffffff01\t(65535:65281)\n\tno-advertise = 0xffffff02 (65535:65282)\n\tno-export-subconfed = 0xffffff03 (65535:65283)\n\tno-peer = 0xffffff04 (65535:65284)" enum: - "internet" - "planned-shut" @@ -143,24 +144,24 @@ spec: type: "array" type: "object" localPreference: - description: "LocalPreference defines the preference value advertised in the BGP Local Preference path attribute. As Local Preference is only valid for iBGP peers, this value will be ignored for eBGP peers (no Local Preference path attribute will be advertised). If nil / not set, the default Local Preference of 100 will be advertised in the Local Preference path attribute for iBGP peers." + description: "LocalPreference defines the preference value advertised in the BGP Local Preference path attribute.\nAs Local Preference is only valid for iBGP peers, this value will be ignored for eBGP peers\n(no Local Preference path attribute will be advertised).\nIf nil / not set, the default Local Preference of 100 will be advertised in\nthe Local Preference path attribute for iBGP peers." format: "int64" maximum: 4294967295.0 minimum: 0.0 type: "integer" selector: - description: "Selector selects a group of objects of the SelectorType resulting into routes that will be announced with the configured Attributes. If nil / not set, all objects of the SelectorType are selected." + description: "Selector selects a group of objects of the SelectorType\nresulting into routes that will be announced with the configured Attributes.\nIf nil / not set, all objects of the SelectorType are selected." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -168,7 +169,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -185,11 +186,12 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" selectorType: - description: "SelectorType defines the object type on which the Selector applies: - For \"PodCIDR\" the Selector matches k8s CiliumNode resources (path attributes apply to routes announced for PodCIDRs of selected CiliumNodes. Only affects routes of cluster scope / Kubernetes IPAM CIDRs, not Multi-Pool IPAM CIDRs. - For \"CiliumLoadBalancerIPPool\" the Selector matches CiliumLoadBalancerIPPool custom resources (path attributes apply to routes announced for selected CiliumLoadBalancerIPPools). - For \"CiliumPodIPPool\" the Selector matches CiliumPodIPPool custom resources (path attributes apply to routes announced for allocated CIDRs of selected CiliumPodIPPools)." + description: "SelectorType defines the object type on which the Selector applies:\n- For \"PodCIDR\" the Selector matches k8s CiliumNode resources\n (path attributes apply to routes announced for PodCIDRs of selected CiliumNodes.\n Only affects routes of cluster scope / Kubernetes IPAM CIDRs, not Multi-Pool IPAM CIDRs.\n- For \"CiliumLoadBalancerIPPool\" the Selector matches CiliumLoadBalancerIPPool custom resources\n (path attributes apply to routes announced for selected CiliumLoadBalancerIPPools).\n- For \"CiliumPodIPPool\" the Selector matches CiliumPodIPPool custom resources\n (path attributes apply to routes announced for allocated CIDRs of selected CiliumPodIPPools)." enum: - "PodCIDR" - "CiliumLoadBalancerIPPool" @@ -200,7 +202,7 @@ spec: type: "object" type: "array" authSecretRef: - description: "AuthSecretRef is the name of the secret to use to fetch a TCP authentication password for this peer." + description: "AuthSecretRef is the name of the secret to use to fetch a TCP\nauthentication password for this peer." type: "string" connectRetryTimeSeconds: default: 120 @@ -211,13 +213,13 @@ spec: type: "integer" eBGPMultihopTTL: default: 1 - description: "EBGPMultihopTTL controls the multi-hop feature for eBGP peers. Its value defines the Time To Live (TTL) value used in BGP packets sent to the neighbor. The value 1 implies that eBGP multi-hop feature is disabled (only a single hop is allowed). This field is ignored for iBGP peers." + description: "EBGPMultihopTTL controls the multi-hop feature for eBGP peers.\nIts value defines the Time To Live (TTL) value used in BGP packets sent to the neighbor.\nThe value 1 implies that eBGP multi-hop feature is disabled (only a single hop is allowed).\nThis field is ignored for iBGP peers." format: "int32" maximum: 255.0 minimum: 1.0 type: "integer" families: - description: "Families, if provided, defines a set of AFI/SAFIs the speaker will negotiate with it's peer. \n If this slice is not provided the default families of IPv6 and IPv4 will be provided." + description: "Families, if provided, defines a set of AFI/SAFIs the speaker will\nnegotiate with it's peer.\n\nIf this slice is not provided the default families of IPv6 and IPv4 will\nbe provided." items: description: "CiliumBGPFamily represents a AFI/SAFI address family pair." properties: @@ -255,14 +257,14 @@ spec: type: "object" type: "array" gracefulRestart: - description: "GracefulRestart defines graceful restart parameters which are negotiated with this neighbor. If empty / nil, the graceful restart capability is disabled." + description: "GracefulRestart defines graceful restart parameters which are negotiated\nwith this neighbor. If empty / nil, the graceful restart capability is disabled." properties: enabled: description: "Enabled flag, when set enables graceful restart capability." type: "boolean" restartTimeSeconds: default: 120 - description: "RestartTimeSeconds is the estimated time it will take for the BGP session to be re-established with peer after a restart. After this period, peer will remove stale routes. This is described RFC 4724 section 4.2." + description: "RestartTimeSeconds is the estimated time it will take for the BGP\nsession to be re-established with peer after a restart.\nAfter this period, peer will remove stale routes. This is\ndescribed RFC 4724 section 4.2." format: "int32" maximum: 4095.0 minimum: 1.0 @@ -272,31 +274,31 @@ spec: type: "object" holdTimeSeconds: default: 90 - description: "HoldTimeSeconds defines the initial value for the BGP HoldTimer (RFC 4271, Section 4.2). Updating this value will cause a session reset." + description: "HoldTimeSeconds defines the initial value for the BGP HoldTimer (RFC 4271, Section 4.2).\nUpdating this value will cause a session reset." format: "int32" maximum: 65535.0 minimum: 3.0 type: "integer" keepAliveTimeSeconds: default: 30 - description: "KeepaliveTimeSeconds defines the initial value for the BGP KeepaliveTimer (RFC 4271, Section 8). It can not be larger than HoldTimeSeconds. Updating this value will cause a session reset." + description: "KeepaliveTimeSeconds defines the initial value for the BGP KeepaliveTimer (RFC 4271, Section 8).\nIt can not be larger than HoldTimeSeconds. Updating this value will cause a session reset." format: "int32" maximum: 65535.0 minimum: 1.0 type: "integer" peerASN: - description: "PeerASN is the ASN of the peer BGP router. Supports extended 32bit ASNs" + description: "PeerASN is the ASN of the peer BGP router.\nSupports extended 32bit ASNs" format: "int64" maximum: 4294967295.0 minimum: 0.0 type: "integer" peerAddress: - description: "PeerAddress is the IP address of the peer. This must be in CIDR notation and use a /32 to express a single host." + description: "PeerAddress is the IP address of the peer.\nThis must be in CIDR notation and use a /32 to express\na single host." format: "cidr" type: "string" peerPort: default: 179 - description: "PeerPort is the TCP port of the peer. 1-65535 is the range of valid port numbers that can be specified. If unset, defaults to 179." + description: "PeerPort is the TCP port of the peer. 1-65535 is the range of\nvalid port numbers that can be specified. If unset, defaults to 179." format: "int32" maximum: 65535.0 minimum: 1.0 @@ -308,18 +310,18 @@ spec: minItems: 1 type: "array" podIPPoolSelector: - description: "PodIPPoolSelector selects CiliumPodIPPools based on labels. The virtual router will announce allocated CIDRs of matching CiliumPodIPPools. \n If empty / nil no CiliumPodIPPools will be announced." + description: "PodIPPoolSelector selects CiliumPodIPPools based on labels. The virtual\nrouter will announce allocated CIDRs of matching CiliumPodIPPools.\n\nIf empty / nil no CiliumPodIPPools will be announced." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -327,7 +329,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -344,15 +346,16 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" serviceAdvertisements: default: - "LoadBalancerIP" - description: "ServiceAdvertisements selects a group of BGP Advertisement(s) to advertise for the selected services." + description: "ServiceAdvertisements selects a group of BGP Advertisement(s) to advertise\nfor the selected services." items: - description: "BGPServiceAddressType defines type of service address to be advertised. \n Note list of supported service addresses is not exhaustive and can be extended in the future. Consumer of this API should be able to handle unknown values." + description: "BGPServiceAddressType defines type of service address to be advertised.\n\nNote list of supported service addresses is not exhaustive and can be extended in the future.\nConsumer of this API should be able to handle unknown values." enum: - "LoadBalancerIP" - "ClusterIP" @@ -360,18 +363,18 @@ spec: type: "string" type: "array" serviceSelector: - description: "ServiceSelector selects a group of load balancer services which this virtual router will announce. The loadBalancerClass for a service must be nil or specify a class supported by Cilium, e.g. \"io.cilium/bgp-control-plane\". Refer to the following document for additional details regarding load balancer classes: \n https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class \n If empty / nil no services will be announced." + description: "ServiceSelector selects a group of load balancer services which this\nvirtual router will announce. The loadBalancerClass for a service must\nbe nil or specify a class supported by Cilium, e.g. \"io.cilium/bgp-control-plane\".\nRefer to the following document for additional details regarding load balancer\nclasses:\n\n https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class\n\nIf empty / nil no services will be announced." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -379,7 +382,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -396,9 +399,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" required: - "localASN" - "neighbors" @@ -414,9 +418,3 @@ spec: served: true storage: true subresources: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumcidrgroups.yaml b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumcidrgroups.yaml index 16a740a7e..2294afbdc 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumcidrgroups.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumcidrgroups.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumcidrgroups.cilium.io" spec: group: "cilium.io" @@ -20,13 +20,13 @@ spec: - name: "v2alpha1" schema: openAPIV3Schema: - description: "CiliumCIDRGroup is a list of external CIDRs (i.e: CIDRs selecting peers outside the clusters) that can be referenced as a single entity from CiliumNetworkPolicies." + description: "CiliumCIDRGroup is a list of external CIDRs (i.e: CIDRs selecting peers\noutside the clusters) that can be referenced as a single entity from\nCiliumNetworkPolicies." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -35,7 +35,7 @@ spec: externalCIDRs: description: "ExternalCIDRs is a list of CIDRs selecting peers outside the clusters." items: - description: "CIDR specifies a block of IP addresses. Example: 192.0.2.1/32" + description: "CIDR specifies a block of IP addresses.\nExample: 192.0.2.1/32" format: "cidr" type: "string" minItems: 0 @@ -48,9 +48,3 @@ spec: type: "object" served: true storage: true -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumendpointslices.yaml b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumendpointslices.yaml index 78b390590..7aa8d6d02 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumendpointslices.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumendpointslices.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumendpointslices.cilium.io" spec: group: "cilium.io" @@ -23,7 +23,7 @@ spec: description: "CiliumEndpointSlice contains a group of CoreCiliumendpoints." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" endpoints: description: "Endpoints is a list of coreCEPs packed in a CiliumEndpointSlice" @@ -34,7 +34,7 @@ spec: description: "EncryptionSpec defines the encryption relevant configuration of a node." properties: key: - description: "Key is the index to the key to use for encryption or 0 if encryption is disabled." + description: "Key is the index to the key to use for encryption or 0 if encryption is\ndisabled." type: "integer" type: "object" id: @@ -45,9 +45,9 @@ spec: description: "Name indicate as CiliumEndpoint name." type: "string" named-ports: - description: "NamedPorts List of named Layer 4 port and protocol pairs which will be used in Network Policy specs. \n swagger:model NamedPorts" + description: "NamedPorts List of named Layer 4 port and protocol pairs which will be used in Network\nPolicy specs.\n\nswagger:model NamedPorts" items: - description: "Port Layer 4 port / protocol pair \n swagger:model Port" + description: "Port Layer 4 port / protocol pair\n\nswagger:model Port" properties: name: description: "Optional layer 4 port name" @@ -56,7 +56,7 @@ spec: description: "Layer 4 port number" type: "integer" protocol: - description: "Layer 4 protocol Enum: [TCP UDP SCTP ICMP ICMPV6 ANY]" + description: "Layer 4 protocol\nEnum: [TCP UDP SCTP ICMP ICMPV6 ANY]" type: "string" type: "object" type: "array" @@ -75,7 +75,7 @@ spec: type: "object" type: "array" node: - description: "NodeIP is the IP of the node the endpoint is running on. The IP must be reachable between nodes." + description: "NodeIP is the IP of the node the endpoint is running on. The IP must\nbe reachable between nodes." type: "string" required: - "addressing" @@ -83,12 +83,12 @@ spec: type: "object" type: "array" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" namespace: - description: "Namespace indicate as CiliumEndpointSlice namespace. All the CiliumEndpoints within the same namespace are put together in CiliumEndpointSlice." + description: "Namespace indicate as CiliumEndpointSlice namespace.\nAll the CiliumEndpoints within the same namespace are put together\nin CiliumEndpointSlice." type: "string" required: - "endpoints" @@ -96,9 +96,3 @@ spec: type: "object" served: true storage: true -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliuml2announcementpolicies.yaml b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliuml2announcementpolicies.yaml index e2728207d..67f39635d 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliuml2announcementpolicies.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliuml2announcementpolicies.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliuml2announcementpolicies.cilium.io" spec: group: "cilium.io" @@ -24,13 +24,13 @@ spec: name: "v2alpha1" schema: openAPIV3Schema: - description: "CiliumL2AnnouncementPolicy is a Kubernetes third-party resource which is used to defined which nodes should announce what services on the L2 network." + description: "CiliumL2AnnouncementPolicy is a Kubernetes third-party resource which\nis used to defined which nodes should announce what services on the\nL2 network." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -41,26 +41,26 @@ spec: description: "If true, the external IPs of the services are announced" type: "boolean" interfaces: - description: "A list of regular expressions that express which network interface(s) should be used to announce the services over. If nil, all network interfaces are used." + description: "A list of regular expressions that express which network interface(s) should be used\nto announce the services over. If nil, all network interfaces are used." items: type: "string" type: "array" loadBalancerIPs: - description: "If true, the loadbalancer IPs of the services are announced \n If nil this policy applies to all services." + description: "If true, the loadbalancer IPs of the services are announced\n\nIf nil this policy applies to all services." type: "boolean" nodeSelector: - description: "NodeSelector selects a group of nodes which will announce the IPs for the services selected by the service selector. \n If nil this policy applies to all nodes." + description: "NodeSelector selects a group of nodes which will announce the IPs for\nthe services selected by the service selector.\n\nIf nil this policy applies to all nodes." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -68,7 +68,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -85,22 +85,23 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" serviceSelector: - description: "ServiceSelector selects a set of services which will be announced over L2 networks. The loadBalancerClass for a service must be nil or specify a supported class, e.g. \"io.cilium/l2-announcer\". Refer to the following document for additional details regarding load balancer classes: \n https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class \n If nil this policy applies to all services." + description: "ServiceSelector selects a set of services which will be announced over L2 networks.\nThe loadBalancerClass for a service must be nil or specify a supported class, e.g.\n\"io.cilium/l2-announcer\". Refer to the following document for additional details\nregarding load balancer classes:\n\n https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class\n\nIf nil this policy applies to all services." properties: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -108,7 +109,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -125,9 +126,10 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "object" status: description: "Status is the status of the policy." @@ -135,23 +137,23 @@ spec: conditions: description: "Current service state" items: - description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, \n type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: - description: "lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." + description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." format: "date-time" type: "string" message: - description: "message is a human readable message indicating details about the transition. This may be an empty string." + description: "message is a human readable message indicating details about the transition.\nThis may be an empty string." maxLength: 32768 type: "string" observedGeneration: - description: "observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance." + description: "observedGeneration represents the .metadata.generation that the condition was set based upon.\nFor instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date\nwith respect to the current state of the instance." format: "int64" minimum: 0.0 type: "integer" reason: - description: "reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty." + description: "reason contains a programmatic identifier indicating the reason for the condition's last transition.\nProducers of specific condition types may define expected values and meanings for this field,\nand whether the values are considered a guaranteed API.\nThe value should be a CamelCase string.\nThis field may not be empty." maxLength: 1024 minLength: 1 pattern: "^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$" @@ -164,7 +166,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" @@ -187,9 +189,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumloadbalancerippools.yaml b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumloadbalancerippools.yaml index fd73e0333..bb9f4e1e7 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumloadbalancerippools.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumloadbalancerippools.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumloadbalancerippools.cilium.io" spec: group: "cilium.io" @@ -36,21 +36,21 @@ spec: name: "v2alpha1" schema: openAPIV3Schema: - description: "CiliumLoadBalancerIPPool is a Kubernetes third-party resource which is used to defined pools of IPs which the operator can use to to allocate and advertise IPs for Services of type LoadBalancer." + description: "CiliumLoadBalancerIPPool is a Kubernetes third-party resource which\nis used to defined pools of IPs which the operator can use to to allocate\nand advertise IPs for Services of type LoadBalancer." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" spec: - description: "Spec is a human readable description for a BGP load balancer ip pool." + description: "Spec is a human readable description for a BGP load balancer\nip pool." properties: allowFirstLastIPs: - description: "AllowFirstLastIPs, if set to `Yes` or undefined means that the first and last IPs of each CIDR will be allocatable. If `No`, these IPs will be reserved. This field is ignored for /{31,32} and /{127,128} CIDRs since reserving the first and last IPs would make the CIDRs unusable." + description: "AllowFirstLastIPs, if set to `Yes` or undefined means that the first and last IPs of each CIDR will be allocatable.\nIf `No`, these IPs will be reserved. This field is ignored for /{31,32} and /{127,128} CIDRs since\nreserving the first and last IPs would make the CIDRs unusable." enum: - "Yes" - "No" @@ -71,7 +71,7 @@ spec: type: "array" disabled: default: false - description: "Disabled, if set to true means that no new IPs will be allocated from this pool. Existing allocations will not be removed from services." + description: "Disabled, if set to true means that no new IPs will be allocated from this pool.\nExisting allocations will not be removed from services." type: "boolean" serviceSelector: description: "ServiceSelector selects a set of services which are eligible to receive IPs from this" @@ -79,13 +79,13 @@ spec: matchExpressions: description: "matchExpressions is a list of label selector requirements. The requirements are ANDed." items: - description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values." + description: "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." properties: key: description: "key is the label key that the selector applies to." type: "string" operator: - description: "operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist." + description: "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." enum: - "In" - "NotIn" @@ -93,7 +93,7 @@ spec: - "DoesNotExist" type: "string" values: - description: "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch." + description: "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch." items: type: "string" type: "array" @@ -110,33 +110,34 @@ spec: maxLength: 63 pattern: "^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$" type: "string" - description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed." + description: "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed." type: "object" type: "object" + x-kubernetes-map-type: "atomic" type: "object" status: - description: "Status is the status of the IP Pool. \n It might be possible for users to define overlapping IP Pools, we can't validate or enforce non-overlapping pools during object creation. The Cilium operator will do this validation and update the status to reflect the ability to allocate IPs from this pool." + description: "Status is the status of the IP Pool.\n\nIt might be possible for users to define overlapping IP Pools, we can't validate or enforce non-overlapping pools\nduring object creation. The Cilium operator will do this validation and update the status to reflect the ability\nto allocate IPs from this pool." properties: conditions: description: "Current service state" items: - description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, \n type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: - description: "lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." + description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." format: "date-time" type: "string" message: - description: "message is a human readable message indicating details about the transition. This may be an empty string." + description: "message is a human readable message indicating details about the transition.\nThis may be an empty string." maxLength: 32768 type: "string" observedGeneration: - description: "observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance." + description: "observedGeneration represents the .metadata.generation that the condition was set based upon.\nFor instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date\nwith respect to the current state of the instance." format: "int64" minimum: 0.0 type: "integer" reason: - description: "reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty." + description: "reason contains a programmatic identifier indicating the reason for the condition's last transition.\nProducers of specific condition types may define expected values and meanings for this field,\nand whether the values are considered a guaranteed API.\nThe value should be a CamelCase string.\nThis field may not be empty." maxLength: 1024 minLength: 1 pattern: "^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$" @@ -149,7 +150,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" @@ -167,14 +168,9 @@ spec: type: "object" required: - "metadata" + - "spec" type: "object" served: true storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumpodippools.yaml b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumpodippools.yaml index 80f11ae38..93f23fbec 100644 --- a/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumpodippools.yaml +++ b/crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumpodippools.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "ciliumpodippools.cilium.io" spec: group: "cilium.io" @@ -20,13 +20,13 @@ spec: - name: "v2alpha1" schema: openAPIV3Schema: - description: "CiliumPodIPPool defines an IP pool that can be used for pooled IPAM (i.e. the multi-pool IPAM mode)." + description: "CiliumPodIPPool defines an IP pool that can be used for pooled IPAM (i.e. the multi-pool IPAM\nmode)." properties: apiVersion: - description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" + description: "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources" type: "string" kind: - description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" + description: "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds" type: "string" metadata: type: "object" @@ -78,9 +78,3 @@ spec: type: "object" served: true storage: true -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/crd-catalog/cloudnative-pg/cloudnative-pg/postgresql.cnpg.io/v1/clusters.yaml b/crd-catalog/cloudnative-pg/cloudnative-pg/postgresql.cnpg.io/v1/clusters.yaml index 440c75786..451501592 100644 --- a/crd-catalog/cloudnative-pg/cloudnative-pg/postgresql.cnpg.io/v1/clusters.yaml +++ b/crd-catalog/cloudnative-pg/cloudnative-pg/postgresql.cnpg.io/v1/clusters.yaml @@ -2467,6 +2467,10 @@ spec: items: description: "PluginConfiguration specifies a plugin that need to be loaded for this\ncluster to be reconciled" properties: + enabled: + default: true + description: "Enabled is true if this plugin will be used" + type: "boolean" name: description: "Name is the plugin name" type: "string" diff --git a/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/feedinventories.yaml b/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/feedinventories.yaml index ac0ec6248..185c01b3a 100644 --- a/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/feedinventories.yaml +++ b/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/feedinventories.yaml @@ -89,11 +89,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchFields: description: "A list of node selector requirements by node's fields." items: @@ -110,11 +112,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" type: "object" x-kubernetes-map-type: "atomic" weight: @@ -126,6 +130,7 @@ spec: - "weight" type: "object" type: "array" + x-kubernetes-list-type: "atomic" requiredDuringSchedulingIgnoredDuringExecution: description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to an update), the system\nmay or may not try to eventually evict the pod from its node." properties: @@ -150,11 +155,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchFields: description: "A list of node selector requirements by node's fields." items: @@ -171,14 +178,17 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" type: "object" x-kubernetes-map-type: "atomic" type: "array" + x-kubernetes-list-type: "atomic" required: - "nodeSelectorTerms" type: "object" @@ -214,11 +224,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -227,13 +239,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" @@ -257,11 +269,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -274,6 +288,7 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" topologyKey: description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" @@ -289,6 +304,7 @@ spec: - "weight" type: "object" type: "array" + x-kubernetes-list-type: "atomic" requiredDuringSchedulingIgnoredDuringExecution: description: "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: @@ -313,11 +329,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -326,13 +344,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" @@ -356,11 +374,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -373,6 +393,7 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" topologyKey: description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" @@ -380,6 +401,7 @@ spec: - "topologyKey" type: "object" type: "array" + x-kubernetes-list-type: "atomic" type: "object" podAntiAffinity: description: "Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))." @@ -411,11 +433,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -424,13 +448,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" @@ -454,11 +478,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -471,6 +497,7 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" topologyKey: description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" @@ -486,6 +513,7 @@ spec: - "weight" type: "object" type: "array" + x-kubernetes-list-type: "atomic" requiredDuringSchedulingIgnoredDuringExecution: description: "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied." items: @@ -510,11 +538,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -523,13 +553,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nAlso, MatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both MismatchLabelKeys and LabelSelector.\nAlso, MismatchLabelKeys cannot be set when LabelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." items: type: "string" type: "array" @@ -553,11 +583,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -570,6 +602,7 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" topologyKey: description: "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." type: "string" @@ -577,6 +610,7 @@ spec: - "topologyKey" type: "object" type: "array" + x-kubernetes-list-type: "atomic" type: "object" type: "object" nodeSelector: diff --git a/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/globalizations.yaml b/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/globalizations.yaml index ba1fb883b..5f85af177 100644 --- a/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/globalizations.yaml +++ b/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/globalizations.yaml @@ -57,11 +57,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" diff --git a/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/subscriptions.yaml b/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/subscriptions.yaml index ed352df41..7707353a8 100644 --- a/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/subscriptions.yaml +++ b/crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/subscriptions.yaml @@ -99,11 +99,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchFields: description: "A list of node selector requirements by node's fields." items: @@ -120,11 +122,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" type: "object" x-kubernetes-map-type: "atomic" weight: @@ -167,11 +171,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -190,7 +196,7 @@ spec: format: "int32" type: "integer" minDomains: - description: "MinDomains indicates a minimum number of eligible domains.\nWhen the number of eligible domains with matching topology keys is less than minDomains,\nPod Topology Spread treats \"global minimum\" as 0, and then the calculation of Skew is performed.\nAnd when the number of eligible domains with matching topology keys equals or greater than minDomains,\nthis value has no effect on scheduling.\nAs a result, when the number of eligible domains is less than minDomains,\nscheduler won't schedule more than maxSkew Pods to those domains.\nIf value is nil, the constraint behaves as if MinDomains is equal to 1.\nValid values are integers greater than 0.\nWhen value is not nil, WhenUnsatisfiable must be DoNotSchedule.\n\n\nFor example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same\nlabelSelector spread as 2/2/2:\n| zone1 | zone2 | zone3 |\n| P P | P P | P P |\nThe number of domains is less than 5(MinDomains), so \"global minimum\" is treated as 0.\nIn this situation, new pod with the same labelSelector cannot be scheduled,\nbecause computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones,\nit will violate MaxSkew.\n\n\nThis is a beta field and requires the MinDomainsInPodTopologySpread feature gate to be enabled (enabled by default)." + description: "MinDomains indicates a minimum number of eligible domains.\nWhen the number of eligible domains with matching topology keys is less than minDomains,\nPod Topology Spread treats \"global minimum\" as 0, and then the calculation of Skew is performed.\nAnd when the number of eligible domains with matching topology keys equals or greater than minDomains,\nthis value has no effect on scheduling.\nAs a result, when the number of eligible domains is less than minDomains,\nscheduler won't schedule more than maxSkew Pods to those domains.\nIf value is nil, the constraint behaves as if MinDomains is equal to 1.\nValid values are integers greater than 0.\nWhen value is not nil, WhenUnsatisfiable must be DoNotSchedule.\n\n\nFor example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same\nlabelSelector spread as 2/2/2:\n| zone1 | zone2 | zone3 |\n| P P | P P | P P |\nThe number of domains is less than 5(MinDomains), so \"global minimum\" is treated as 0.\nIn this situation, new pod with the same labelSelector cannot be scheduled,\nbecause computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones,\nit will violate MaxSkew." format: "int32" type: "integer" nodeAffinityPolicy: @@ -296,11 +302,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" diff --git a/crd-catalog/crossplane/crossplane/apiextensions.crossplane.io/v1/compositionrevisions.yaml b/crd-catalog/crossplane/crossplane/apiextensions.crossplane.io/v1/compositionrevisions.yaml index edad01d39..a8dbd2e43 100644 --- a/crd-catalog/crossplane/crossplane/apiextensions.crossplane.io/v1/compositionrevisions.yaml +++ b/crd-catalog/crossplane/crossplane/apiextensions.crossplane.io/v1/compositionrevisions.yaml @@ -1098,12 +1098,9 @@ spec: type: "object" type: "array" revision: - description: "Revision number. Newer revisions have larger numbers." + description: "Revision number. Newer revisions have larger numbers.\n\n\nThis number can change. When a Composition transitions from state A\n-> B -> A there will be only two CompositionRevisions. Crossplane will\nedit the original CompositionRevision to change its revision number from\n0 to 2." format: "int64" type: "integer" - x-kubernetes-validations: - - message: "Value is immutable" - rule: "self == oldSelf" writeConnectionSecretsToNamespace: description: "WriteConnectionSecretsToNamespace specifies the namespace in which the\nconnection secrets of composite resource dynamically provisioned using\nthis composition will be created.\nThis field is planned to be replaced in a future release in favor of\nPublishConnectionDetailsWithStoreConfigRef. Currently, both could be\nset independently and connection details would be published to both\nwithout affecting each other as long as related fields at MR level\nspecified." type: "string" diff --git a/crd-catalog/crossplane/crossplane/apiextensions.crossplane.io/v1beta1/compositionrevisions.yaml b/crd-catalog/crossplane/crossplane/apiextensions.crossplane.io/v1beta1/compositionrevisions.yaml index 6609e3563..07b9d3a67 100644 --- a/crd-catalog/crossplane/crossplane/apiextensions.crossplane.io/v1beta1/compositionrevisions.yaml +++ b/crd-catalog/crossplane/crossplane/apiextensions.crossplane.io/v1beta1/compositionrevisions.yaml @@ -1098,12 +1098,9 @@ spec: type: "object" type: "array" revision: - description: "Revision number. Newer revisions have larger numbers." + description: "Revision number. Newer revisions have larger numbers.\n\n\nThis number can change. When a Composition transitions from state A\n-> B -> A there will be only two CompositionRevisions. Crossplane will\nedit the original CompositionRevision to change its revision number from\n0 to 2." format: "int64" type: "integer" - x-kubernetes-validations: - - message: "Value is immutable" - rule: "self == oldSelf" writeConnectionSecretsToNamespace: description: "WriteConnectionSecretsToNamespace specifies the namespace in which the\nconnection secrets of composite resource dynamically provisioned using\nthis composition will be created.\nThis field is planned to be replaced in a future release in favor of\nPublishConnectionDetailsWithStoreConfigRef. Currently, both could be\nset independently and connection details would be published to both\nwithout affecting each other as long as related fields at MR level\nspecified." type: "string" diff --git a/crd-catalog/eclipse-che/che-operator/org.eclipse.che/v2/checlusters.yaml b/crd-catalog/eclipse-che/che-operator/org.eclipse.che/v2/checlusters.yaml index 2d13266ad..685fdfc96 100644 --- a/crd-catalog/eclipse-che/che-operator/org.eclipse.che/v2/checlusters.yaml +++ b/crd-catalog/eclipse-che/che-operator/org.eclipse.che/v2/checlusters.yaml @@ -877,6 +877,15 @@ spec: pvcStrategy: "per-user" description: "Development environment default configuration options." properties: + allowedSource: + description: "AllowedSource defines the allowed sources on which workspaces can be started." + properties: + urls: + description: "The list of approved URLs for starting Cloud Development Environments (CDEs). CDEs can only be\ninitiated from these URLs." + items: + type: "string" + type: "array" + type: "object" containerBuildConfiguration: description: "Container build configuration." properties: diff --git a/crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/clusteroutputs.yaml b/crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/clusteroutputs.yaml index 24c31334f..b4184a2fb 100644 --- a/crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/clusteroutputs.yaml +++ b/crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/clusteroutputs.yaml @@ -425,6 +425,31 @@ spec: awsAuth: description: "Enable AWS Sigv4 Authentication for Amazon ElasticSearch Service." type: "string" + awsAuthSecret: + description: "AWSAuthSecret Enable AWS Sigv4 Authentication for Amazon ElasticSearch Service." + properties: + valueFrom: + description: "ValueSource defines how to find a value's key." + properties: + secretKeyRef: + description: "Selects a key of a secret in the pod's namespace" + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "object" + type: "object" awsExternalID: description: "External ID for the AWS IAM Role specified with aws_role_arn." type: "string" @@ -444,6 +469,31 @@ spec: cloudAuth: description: "Specify the credentials to use to connect to Elastic's Elasticsearch Service running on Elastic Cloud." type: "string" + cloudAuthSecret: + description: "CloudAuthSecret Specify the credentials to use to connect to Elastic's Elasticsearch Service running on Elastic Cloud." + properties: + valueFrom: + description: "ValueSource defines how to find a value's key." + properties: + secretKeyRef: + description: "Selects a key of a secret in the pod's namespace" + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "object" + type: "object" cloudID: description: "If you are using Elastic's Elasticsearch Service you can specify the cloud_id of the cluster running." type: "string" diff --git a/crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/outputs.yaml b/crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/outputs.yaml index 794bdcbf6..8aa7b6cf5 100644 --- a/crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/outputs.yaml +++ b/crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/outputs.yaml @@ -425,6 +425,31 @@ spec: awsAuth: description: "Enable AWS Sigv4 Authentication for Amazon ElasticSearch Service." type: "string" + awsAuthSecret: + description: "AWSAuthSecret Enable AWS Sigv4 Authentication for Amazon ElasticSearch Service." + properties: + valueFrom: + description: "ValueSource defines how to find a value's key." + properties: + secretKeyRef: + description: "Selects a key of a secret in the pod's namespace" + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "object" + type: "object" awsExternalID: description: "External ID for the AWS IAM Role specified with aws_role_arn." type: "string" @@ -444,6 +469,31 @@ spec: cloudAuth: description: "Specify the credentials to use to connect to Elastic's Elasticsearch Service running on Elastic Cloud." type: "string" + cloudAuthSecret: + description: "CloudAuthSecret Specify the credentials to use to connect to Elastic's Elasticsearch Service running on Elastic Cloud." + properties: + valueFrom: + description: "ValueSource defines how to find a value's key." + properties: + secretKeyRef: + description: "Selects a key of a secret in the pod's namespace" + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "object" + type: "object" cloudID: description: "If you are using Elastic's Elasticsearch Service you can specify the cloud_id of the cluster running." type: "string" diff --git a/crd-catalog/fluxcd/image-automation-controller/image.toolkit.fluxcd.io/v1beta1/imageupdateautomations.yaml b/crd-catalog/fluxcd/image-automation-controller/image.toolkit.fluxcd.io/v1beta1/imageupdateautomations.yaml index bcf7ba130..f9868f627 100644 --- a/crd-catalog/fluxcd/image-automation-controller/image.toolkit.fluxcd.io/v1beta1/imageupdateautomations.yaml +++ b/crd-catalog/fluxcd/image-automation-controller/image.toolkit.fluxcd.io/v1beta1/imageupdateautomations.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "imageupdateautomations.image.toolkit.fluxcd.io" spec: group: "image.toolkit.fluxcd.io" @@ -48,10 +48,10 @@ spec: description: "Branch to check out, defaults to 'master' if no other field is defined." type: "string" commit: - description: "Commit SHA to check out, takes precedence over all reference fields.\n\n\nThis can be combined with Branch to shallow clone the branch, in which\nthe commit is expected to exist." + description: "Commit SHA to check out, takes precedence over all reference fields.\n\nThis can be combined with Branch to shallow clone the branch, in which\nthe commit is expected to exist." type: "string" name: - description: "Name of the reference to check out; takes precedence over Branch, Tag and SemVer.\n\n\nIt must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description\nExamples: \"refs/heads/main\", \"refs/tags/v0.1.0\", \"refs/pull/420/head\", \"refs/merge-requests/1/head\"" + description: "Name of the reference to check out; takes precedence over Branch, Tag and SemVer.\n\nIt must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description\nExamples: \"refs/heads/main\", \"refs/tags/v0.1.0\", \"refs/pull/420/head\", \"refs/merge-requests/1/head\"" type: "string" semver: description: "SemVer tag expression to check out, takes precedence over Tag." @@ -93,6 +93,8 @@ spec: required: - "name" type: "object" + required: + - "secretRef" type: "object" required: - "author" @@ -172,7 +174,7 @@ spec: properties: conditions: items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -201,7 +203,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/image-automation-controller/image.toolkit.fluxcd.io/v1beta2/imageupdateautomations.yaml b/crd-catalog/fluxcd/image-automation-controller/image.toolkit.fluxcd.io/v1beta2/imageupdateautomations.yaml index 9defddcaa..097d698f3 100644 --- a/crd-catalog/fluxcd/image-automation-controller/image.toolkit.fluxcd.io/v1beta2/imageupdateautomations.yaml +++ b/crd-catalog/fluxcd/image-automation-controller/image.toolkit.fluxcd.io/v1beta2/imageupdateautomations.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "imageupdateautomations.image.toolkit.fluxcd.io" spec: group: "image.toolkit.fluxcd.io" @@ -46,10 +46,10 @@ spec: description: "Branch to check out, defaults to 'master' if no other field is defined." type: "string" commit: - description: "Commit SHA to check out, takes precedence over all reference fields.\n\n\nThis can be combined with Branch to shallow clone the branch, in which\nthe commit is expected to exist." + description: "Commit SHA to check out, takes precedence over all reference fields.\n\nThis can be combined with Branch to shallow clone the branch, in which\nthe commit is expected to exist." type: "string" name: - description: "Name of the reference to check out; takes precedence over Branch, Tag and SemVer.\n\n\nIt must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description\nExamples: \"refs/heads/main\", \"refs/tags/v0.1.0\", \"refs/pull/420/head\", \"refs/merge-requests/1/head\"" + description: "Name of the reference to check out; takes precedence over Branch, Tag and SemVer.\n\nIt must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description\nExamples: \"refs/heads/main\", \"refs/tags/v0.1.0\", \"refs/pull/420/head\", \"refs/merge-requests/1/head\"" type: "string" semver: description: "SemVer tag expression to check out, takes precedence over Tag." @@ -91,6 +91,8 @@ spec: required: - "name" type: "object" + required: + - "secretRef" type: "object" required: - "author" @@ -203,7 +205,7 @@ spec: properties: conditions: items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -232,7 +234,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta1/imagepolicies.yaml b/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta1/imagepolicies.yaml index 059b052d9..bb14f0a4a 100644 --- a/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta1/imagepolicies.yaml +++ b/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta1/imagepolicies.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "imagepolicies.image.toolkit.fluxcd.io" spec: group: "image.toolkit.fluxcd.io" @@ -101,7 +101,7 @@ spec: properties: conditions: items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -130,7 +130,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta1/imagerepositories.yaml b/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta1/imagerepositories.yaml index 410af0315..41643be6d 100644 --- a/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta1/imagerepositories.yaml +++ b/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta1/imagerepositories.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "imagerepositories.image.toolkit.fluxcd.io" spec: group: "image.toolkit.fluxcd.io" @@ -55,7 +55,7 @@ spec: - "namespaceSelectors" type: "object" certSecretRef: - description: "CertSecretRef can be given the name of a secret containing\neither or both of\n\n\n - a PEM-encoded client certificate (`certFile`) and private\n key (`keyFile`);\n - a PEM-encoded CA certificate (`caFile`)\n\n\n and whichever are supplied, will be used for connecting to the\n registry. The client cert and key are useful if you are\n authenticating with a certificate; the CA cert is useful if\n you are using a self-signed server certificate." + description: "CertSecretRef can be given the name of a secret containing\neither or both of\n\n - a PEM-encoded client certificate (`certFile`) and private\n key (`keyFile`);\n - a PEM-encoded CA certificate (`caFile`)\n\n and whichever are supplied, will be used for connecting to the\n registry. The client cert and key are useful if you are\n authenticating with a certificate; the CA cert is useful if\n you are using a self-signed server certificate." properties: name: description: "Name of the referent." @@ -95,6 +95,9 @@ spec: description: "Timeout for image scanning.\nDefaults to 'Interval' duration." pattern: "^([0-9]+(\\.[0-9]+)?(ms|s|m))+$" type: "string" + required: + - "image" + - "interval" type: "object" status: default: @@ -106,7 +109,7 @@ spec: type: "string" conditions: items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -135,7 +138,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagepolicies.yaml b/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagepolicies.yaml index af75ec225..d6139cbd1 100644 --- a/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagepolicies.yaml +++ b/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagepolicies.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "imagepolicies.image.toolkit.fluxcd.io" spec: group: "image.toolkit.fluxcd.io" @@ -101,7 +101,7 @@ spec: properties: conditions: items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -130,7 +130,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagerepositories.yaml b/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagerepositories.yaml index c3fdd7a66..fa33b0b3b 100644 --- a/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagerepositories.yaml +++ b/crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagerepositories.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "imagerepositories.image.toolkit.fluxcd.io" spec: group: "image.toolkit.fluxcd.io" @@ -55,7 +55,7 @@ spec: - "namespaceSelectors" type: "object" certSecretRef: - description: "CertSecretRef can be given the name of a Secret containing\neither or both of\n\n\n- a PEM-encoded client certificate (`tls.crt`) and private\nkey (`tls.key`);\n- a PEM-encoded CA certificate (`ca.crt`)\n\n\nand whichever are supplied, will be used for connecting to the\nregistry. The client cert and key are useful if you are\nauthenticating with a certificate; the CA cert is useful if\nyou are using a self-signed server certificate. The Secret must\nbe of type `Opaque` or `kubernetes.io/tls`.\n\n\nNote: Support for the `caFile`, `certFile` and `keyFile` keys has\nbeen deprecated." + description: "CertSecretRef can be given the name of a Secret containing\neither or both of\n\n- a PEM-encoded client certificate (`tls.crt`) and private\nkey (`tls.key`);\n- a PEM-encoded CA certificate (`ca.crt`)\n\nand whichever are supplied, will be used for connecting to the\nregistry. The client cert and key are useful if you are\nauthenticating with a certificate; the CA cert is useful if\nyou are using a self-signed server certificate. The Secret must\nbe of type `Opaque` or `kubernetes.io/tls`.\n\nNote: Support for the `caFile`, `certFile` and `keyFile` keys has\nbeen deprecated." properties: name: description: "Name of the referent." @@ -90,6 +90,15 @@ spec: - "azure" - "gcp" type: "string" + proxySecretRef: + description: "ProxySecretRef specifies the Secret containing the proxy configuration\nto use while communicating with the container registry." + properties: + name: + description: "Name of the referent." + type: "string" + required: + - "name" + type: "object" secretRef: description: "SecretRef can be given the name of a secret containing\ncredentials to use for the image registry. The secret should be\ncreated with `kubectl create secret docker-registry`, or the\nequivalent." properties: @@ -110,6 +119,9 @@ spec: description: "Timeout for image scanning.\nDefaults to 'Interval' duration." pattern: "^([0-9]+(\\.[0-9]+)?(ms|s|m))+$" type: "string" + required: + - "image" + - "interval" type: "object" status: default: @@ -121,7 +133,7 @@ spec: type: "string" conditions: items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -150,7 +162,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1/receivers.yaml b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1/receivers.yaml index acb2f2fe6..1b493edbf 100644 --- a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1/receivers.yaml +++ b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1/receivers.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "receivers.notification.toolkit.fluxcd.io" spec: group: "notification.toolkit.fluxcd.io" @@ -132,7 +132,7 @@ spec: conditions: description: "Conditions holds the conditions for the Receiver." items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -161,7 +161,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/alerts.yaml b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/alerts.yaml index 61af86c30..eee81016b 100644 --- a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/alerts.yaml +++ b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/alerts.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "alerts.notification.toolkit.fluxcd.io" spec: group: "notification.toolkit.fluxcd.io" @@ -86,6 +86,7 @@ spec: minLength: 1 type: "string" required: + - "kind" - "name" type: "object" type: "array" @@ -120,7 +121,7 @@ spec: properties: conditions: items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -149,7 +150,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/providers.yaml b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/providers.yaml index 0db81f858..028af2db4 100644 --- a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/providers.yaml +++ b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/providers.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "providers.notification.toolkit.fluxcd.io" spec: group: "notification.toolkit.fluxcd.io" @@ -115,7 +115,7 @@ spec: properties: conditions: items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -144,7 +144,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/receivers.yaml b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/receivers.yaml index 72ecf0952..af356d775 100644 --- a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/receivers.yaml +++ b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/receivers.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "receivers.notification.toolkit.fluxcd.io" spec: group: "notification.toolkit.fluxcd.io" @@ -84,6 +84,7 @@ spec: minLength: 1 type: "string" required: + - "kind" - "name" type: "object" type: "array" @@ -116,6 +117,7 @@ spec: type: "string" required: - "resources" + - "secretRef" - "type" type: "object" status: @@ -125,7 +127,7 @@ spec: properties: conditions: items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -154,7 +156,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/alerts.yaml b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/alerts.yaml index e9082a9d7..9bae783ec 100644 --- a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/alerts.yaml +++ b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/alerts.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "alerts.notification.toolkit.fluxcd.io" spec: group: "notification.toolkit.fluxcd.io" @@ -133,7 +133,7 @@ spec: conditions: description: "Conditions holds the conditions for the Alert." items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -162,7 +162,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/providers.yaml b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/providers.yaml index a452f716e..3911b67b1 100644 --- a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/providers.yaml +++ b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/providers.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "providers.notification.toolkit.fluxcd.io" spec: group: "notification.toolkit.fluxcd.io" @@ -46,7 +46,7 @@ spec: maxLength: 2048 type: "string" certSecretRef: - description: "CertSecretRef specifies the Secret containing\na PEM-encoded CA certificate (in the `ca.crt` key).\n\n\nNote: Support for the `caFile` key has\nbeen deprecated." + description: "CertSecretRef specifies the Secret containing\na PEM-encoded CA certificate (in the `ca.crt` key).\n\nNote: Support for the `caFile` key has\nbeen deprecated." properties: name: description: "Name of the referent." @@ -128,7 +128,7 @@ spec: conditions: description: "Conditions holds the conditions for the Provider." items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -157,7 +157,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/receivers.yaml b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/receivers.yaml index 1af3e85e6..96510437a 100644 --- a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/receivers.yaml +++ b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/receivers.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "receivers.notification.toolkit.fluxcd.io" spec: group: "notification.toolkit.fluxcd.io" @@ -121,6 +121,7 @@ spec: type: "string" required: - "resources" + - "secretRef" - "type" type: "object" status: @@ -131,7 +132,7 @@ spec: conditions: description: "Conditions holds the conditions for the Receiver." items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -160,7 +161,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta3/alerts.yaml b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta3/alerts.yaml index 412ef0353..d9533790f 100644 --- a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta3/alerts.yaml +++ b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta3/alerts.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "alerts.notification.toolkit.fluxcd.io" spec: group: "notification.toolkit.fluxcd.io" diff --git a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta3/providers.yaml b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta3/providers.yaml index 44a785b9f..b6b10e129 100644 --- a/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta3/providers.yaml +++ b/crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta3/providers.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "providers.notification.toolkit.fluxcd.io" spec: group: "notification.toolkit.fluxcd.io" @@ -38,7 +38,7 @@ spec: maxLength: 2048 type: "string" certSecretRef: - description: "CertSecretRef specifies the Secret containing\na PEM-encoded CA certificate (in the `ca.crt` key).\n\n\nNote: Support for the `caFile` key has\nbeen deprecated." + description: "CertSecretRef specifies the Secret containing\na PEM-encoded CA certificate (in the `ca.crt` key).\n\nNote: Support for the `caFile` key has\nbeen deprecated." properties: name: description: "Name of the referent." diff --git a/crd-catalog/grafana/loki/loki.grafana.com/v1/lokistacks.yaml b/crd-catalog/grafana/loki/loki.grafana.com/v1/lokistacks.yaml index d27bd6ac9..8cc6bd5db 100644 --- a/crd-catalog/grafana/loki/loki.grafana.com/v1/lokistacks.yaml +++ b/crd-catalog/grafana/loki/loki.grafana.com/v1/lokistacks.yaml @@ -106,6 +106,90 @@ spec: format: "int32" type: "integer" type: "object" + otlp: + description: "OTLP to configure which resource, scope and log attributes\nto store as labels or structured metadata or drop them altogether\nfor all tenants." + properties: + indexedResourceAttributes: + description: "IndexedResourceAttributes contains the global configuration for resource attributes\nto store them as index labels or structured metadata or drop them altogether." + items: + type: "string" + type: "array" + logAttributes: + description: "LogAttributes contains the configuration for log attributes\nto store them as index labels or structured metadata or drop them altogether." + items: + description: "OTLPAttributesSpec contains the configuration for a set of attributes\nto store them as index labels or structured metadata or drop them altogether." + properties: + action: + description: "Action defines the indexing action for the selected attributes. They\ncan be either added to structured metadata or drop altogether." + enum: + - "structured_metadata" + - "drop" + type: "string" + attributes: + description: "Attributes allows choosing the attributes by listing their names." + items: + type: "string" + type: "array" + regex: + description: "Regex allows choosing the attributes by matching a regular expression." + type: "string" + required: + - "action" + type: "object" + type: "array" + resourceAttributes: + description: "ResourceAttributes contains the configuration for resource attributes\nto store them as index labels or structured metadata or drop them altogether." + properties: + attributes: + description: "Attributes contains the configuration for resource attributes\nto store them as index labels or structured metadata or drop them altogether." + items: + description: "OTLPResourceAttributesConfigSpec contains the configuration for a set of resource attributes\nto store them as index labels or structured metadata or drop them altogether." + properties: + action: + description: "Action defines the indexing action for the selected resoure attributes. They\ncan be either indexed as labels, added to structured metadata or drop altogether." + enum: + - "index_label" + - "structured_metadata" + - "drop" + type: "string" + attributes: + description: "Attributes is the list of attributes to configure indexing or drop them\naltogether." + items: + type: "string" + type: "array" + regex: + description: "Regex allows choosing the attributes by matching a regular expression." + type: "string" + type: "object" + type: "array" + ignoreDefaults: + description: "IgnoreDefaults controls whether to ignore the global configuration for resource attributes\nindexed as labels.\n\n\nIf IgnoreDefaults is true, then this spec needs to contain at least one mapping to a index label." + type: "boolean" + type: "object" + scopeAttributes: + description: "ScopeAttributes contains the configuration for scope attributes\nto store them as index labels or structured metadata or drop them altogether." + items: + description: "OTLPAttributesSpec contains the configuration for a set of attributes\nto store them as index labels or structured metadata or drop them altogether." + properties: + action: + description: "Action defines the indexing action for the selected attributes. They\ncan be either added to structured metadata or drop altogether." + enum: + - "structured_metadata" + - "drop" + type: "string" + attributes: + description: "Attributes allows choosing the attributes by listing their names." + items: + type: "string" + type: "array" + regex: + description: "Regex allows choosing the attributes by matching a regular expression." + type: "string" + required: + - "action" + type: "object" + type: "array" + type: "object" queries: description: "QueryLimits defines the limit applied on querying log streams." properties: @@ -215,6 +299,85 @@ spec: format: "int32" type: "integer" type: "object" + otlp: + description: "OTLP to configure which resource, scope and log attributes\nto store as labels or structured metadata or drop them altogether\nfor a single tenants." + properties: + logAttributes: + description: "LogAttributes contains the configuration for log attributes\nto store them as index labels or structured metadata or drop them altogether." + items: + description: "OTLPAttributesSpec contains the configuration for a set of attributes\nto store them as index labels or structured metadata or drop them altogether." + properties: + action: + description: "Action defines the indexing action for the selected attributes. They\ncan be either added to structured metadata or drop altogether." + enum: + - "structured_metadata" + - "drop" + type: "string" + attributes: + description: "Attributes allows choosing the attributes by listing their names." + items: + type: "string" + type: "array" + regex: + description: "Regex allows choosing the attributes by matching a regular expression." + type: "string" + required: + - "action" + type: "object" + type: "array" + resourceAttributes: + description: "ResourceAttributes contains the configuration for resource attributes\nto store them as index labels or structured metadata or drop them altogether." + properties: + attributes: + description: "Attributes contains the configuration for resource attributes\nto store them as index labels or structured metadata or drop them altogether." + items: + description: "OTLPResourceAttributesConfigSpec contains the configuration for a set of resource attributes\nto store them as index labels or structured metadata or drop them altogether." + properties: + action: + description: "Action defines the indexing action for the selected resoure attributes. They\ncan be either indexed as labels, added to structured metadata or drop altogether." + enum: + - "index_label" + - "structured_metadata" + - "drop" + type: "string" + attributes: + description: "Attributes is the list of attributes to configure indexing or drop them\naltogether." + items: + type: "string" + type: "array" + regex: + description: "Regex allows choosing the attributes by matching a regular expression." + type: "string" + type: "object" + type: "array" + ignoreDefaults: + description: "IgnoreDefaults controls whether to ignore the global configuration for resource attributes\nindexed as labels.\n\n\nIf IgnoreDefaults is true, then this spec needs to contain at least one mapping to a index label." + type: "boolean" + type: "object" + scopeAttributes: + description: "ScopeAttributes contains the configuration for scope attributes\nto store them as index labels or structured metadata or drop them altogether." + items: + description: "OTLPAttributesSpec contains the configuration for a set of attributes\nto store them as index labels or structured metadata or drop them altogether." + properties: + action: + description: "Action defines the indexing action for the selected attributes. They\ncan be either added to structured metadata or drop altogether." + enum: + - "structured_metadata" + - "drop" + type: "string" + attributes: + description: "Attributes allows choosing the attributes by listing their names." + items: + type: "string" + type: "array" + regex: + description: "Regex allows choosing the attributes by matching a regular expression." + type: "string" + required: + - "action" + type: "object" + type: "array" + type: "object" queries: description: "QueryLimits defines the limit applied on querying log streams." properties: diff --git a/crd-catalog/gravitational/teleport/resources.teleport.dev/v1/teleportloginrules.yaml b/crd-catalog/gravitational/teleport/resources.teleport.dev/v1/teleportloginrules.yaml index c67c7a9ae..93ad10021 100644 --- a/crd-catalog/gravitational/teleport/resources.teleport.dev/v1/teleportloginrules.yaml +++ b/crd-catalog/gravitational/teleport/resources.teleport.dev/v1/teleportloginrules.yaml @@ -52,7 +52,7 @@ spec: conditions: description: "Conditions represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -81,7 +81,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/gravitational/teleport/resources.teleport.dev/v1/teleportoktaimportrules.yaml b/crd-catalog/gravitational/teleport/resources.teleport.dev/v1/teleportoktaimportrules.yaml index 538695570..60e7b20a5 100644 --- a/crd-catalog/gravitational/teleport/resources.teleport.dev/v1/teleportoktaimportrules.yaml +++ b/crd-catalog/gravitational/teleport/resources.teleport.dev/v1/teleportoktaimportrules.yaml @@ -88,7 +88,7 @@ spec: conditions: description: "Conditions represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -117,7 +117,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportprovisiontokens.yaml b/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportprovisiontokens.yaml index 8850bf2ea..341c0f38b 100644 --- a/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportprovisiontokens.yaml +++ b/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportprovisiontokens.yaml @@ -311,6 +311,9 @@ spec: audience: description: "Audience is the JWT audience as configured in the TFC_WORKLOAD_IDENTITY_AUDIENCE(_$TAG) variable in Terraform Cloud. If unset, defaults to the Teleport cluster name. For example, if `TFC_WORKLOAD_IDENTITY_AUDIENCE_TELEPORT=foo` is set in Terraform Cloud, this value should be `foo`. If the variable is set to match the cluster name, it does not need to be set here." type: "string" + hostname: + description: "Hostname is the hostname of the Terraform Enterprise instance expected to issue JWTs allowed by this token. This may be unset for regular Terraform Cloud use, in which case it will be assumed to be `app.terraform.io`. Otherwise, it must both match the `iss` (issuer) field included in JWTs, and provide standard JWKS endpoints." + type: "string" type: "object" tpm: description: "TPM allows the configuration of options specific to the \"tpm\" join method." @@ -343,7 +346,7 @@ spec: conditions: description: "Conditions represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -372,7 +375,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportsamlconnectors.yaml b/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportsamlconnectors.yaml index da21dcbc8..4510b5428 100644 --- a/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportsamlconnectors.yaml +++ b/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportsamlconnectors.yaml @@ -130,7 +130,7 @@ spec: conditions: description: "Conditions represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -159,7 +159,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportusers.yaml b/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportusers.yaml index 5f32a1864..eb677cd35 100644 --- a/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportusers.yaml +++ b/crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportusers.yaml @@ -110,7 +110,7 @@ spec: conditions: description: "Conditions represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -139,7 +139,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/gravitational/teleport/resources.teleport.dev/v3/teleportgithubconnectors.yaml b/crd-catalog/gravitational/teleport/resources.teleport.dev/v3/teleportgithubconnectors.yaml index 1af05411c..55e4e31c2 100644 --- a/crd-catalog/gravitational/teleport/resources.teleport.dev/v3/teleportgithubconnectors.yaml +++ b/crd-catalog/gravitational/teleport/resources.teleport.dev/v3/teleportgithubconnectors.yaml @@ -90,7 +90,7 @@ spec: conditions: description: "Conditions represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -119,7 +119,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/gravitational/teleport/resources.teleport.dev/v3/teleportoidcconnectors.yaml b/crd-catalog/gravitational/teleport/resources.teleport.dev/v3/teleportoidcconnectors.yaml index ec75497c6..75647f618 100644 --- a/crd-catalog/gravitational/teleport/resources.teleport.dev/v3/teleportoidcconnectors.yaml +++ b/crd-catalog/gravitational/teleport/resources.teleport.dev/v3/teleportoidcconnectors.yaml @@ -123,7 +123,7 @@ spec: conditions: description: "Conditions represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -152,7 +152,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/gravitational/teleport/resources.teleport.dev/v5/teleportroles.yaml b/crd-catalog/gravitational/teleport/resources.teleport.dev/v5/teleportroles.yaml index 2ed2e28e2..4d2f72c5a 100644 --- a/crd-catalog/gravitational/teleport/resources.teleport.dev/v5/teleportroles.yaml +++ b/crd-catalog/gravitational/teleport/resources.teleport.dev/v5/teleportroles.yaml @@ -1015,7 +1015,7 @@ spec: conditions: description: "Conditions represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -1044,7 +1044,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/gravitational/teleport/resources.teleport.dev/v6/teleportroles.yaml b/crd-catalog/gravitational/teleport/resources.teleport.dev/v6/teleportroles.yaml index 30b0dc50a..eec161ec5 100644 --- a/crd-catalog/gravitational/teleport/resources.teleport.dev/v6/teleportroles.yaml +++ b/crd-catalog/gravitational/teleport/resources.teleport.dev/v6/teleportroles.yaml @@ -1015,7 +1015,7 @@ spec: conditions: description: "Conditions represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -1044,7 +1044,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/infinispan/infinispan-operator/infinispan.org/v1/infinispans.yaml b/crd-catalog/infinispan/infinispan-operator/infinispan.org/v1/infinispans.yaml index 4b5993a1a..73837eda5 100644 --- a/crd-catalog/infinispan/infinispan-operator/infinispan.org/v1/infinispans.yaml +++ b/crd-catalog/infinispan/infinispan-operator/infinispan.org/v1/infinispans.yaml @@ -1586,6 +1586,9 @@ spec: operand: description: "The Operand status" properties: + customImage: + description: "Whether the Operand installed/pending is using a custom image" + type: "boolean" deprecated: description: "Whether the Operand has been deprecated and is subject for removal in a subsequent release" type: "boolean" diff --git a/crd-catalog/kiegroup/kogito-serverless-operator/sonataflow.org/v1alpha08/sonataflowplatforms.yaml b/crd-catalog/kiegroup/kogito-serverless-operator/sonataflow.org/v1alpha08/sonataflowplatforms.yaml index 55e3202c6..ec003ad35 100644 --- a/crd-catalog/kiegroup/kogito-serverless-operator/sonataflow.org/v1alpha08/sonataflowplatforms.yaml +++ b/crd-catalog/kiegroup/kogito-serverless-operator/sonataflow.org/v1alpha08/sonataflowplatforms.yaml @@ -476,8 +476,6 @@ spec: required: - "secretRef" type: "object" - required: - - "migrateDBOnStartUp" type: "object" podTemplate: description: "PodTemplate describes the deployment details of this platform service instance." @@ -4790,8 +4788,6 @@ spec: required: - "secretRef" type: "object" - required: - - "migrateDBOnStartUp" type: "object" podTemplate: description: "PodTemplate describes the deployment details of this platform service instance." diff --git a/crd-catalog/kiegroup/kogito-serverless-operator/sonataflow.org/v1alpha08/sonataflows.yaml b/crd-catalog/kiegroup/kogito-serverless-operator/sonataflow.org/v1alpha08/sonataflows.yaml index 6180474e8..0dad1f219 100644 --- a/crd-catalog/kiegroup/kogito-serverless-operator/sonataflow.org/v1alpha08/sonataflows.yaml +++ b/crd-catalog/kiegroup/kogito-serverless-operator/sonataflow.org/v1alpha08/sonataflows.yaml @@ -1605,8 +1605,6 @@ spec: required: - "secretRef" type: "object" - required: - - "migrateDBOnStartUp" type: "object" podTemplate: description: "PodTemplate describes the deployment details of this SonataFlow instance." diff --git a/crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmpowervsclusters.yaml b/crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmpowervsclusters.yaml index 42d55d796..3e8725726 100644 --- a/crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmpowervsclusters.yaml +++ b/crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmpowervsclusters.yaml @@ -747,6 +747,28 @@ spec: id: description: "id represents the id of the resource." type: "string" + powerVSConnection: + description: "powerVSConnection defines the powervs connection status in transit gateway." + properties: + controllerCreated: + default: false + description: "controllerCreated indicates whether the resource is created by the controller." + type: "boolean" + id: + description: "id represents the id of the resource." + type: "string" + type: "object" + vpcConnection: + description: "vpcConnection defines the vpc connection status in transit gateway." + properties: + controllerCreated: + default: false + description: "controllerCreated indicates whether the resource is created by the controller." + type: "boolean" + id: + description: "id represents the id of the resource." + type: "string" + type: "object" type: "object" vpc: description: "vpc is reference to IBM Cloud VPC resources." diff --git a/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/admissionchecks.yaml b/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/admissionchecks.yaml index 15225dce9..97e6123c5 100644 --- a/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/admissionchecks.yaml +++ b/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/admissionchecks.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "admissionchecks.kueue.x-k8s.io" spec: group: "kueue.x-k8s.io" @@ -72,7 +72,7 @@ spec: conditions: description: "conditions hold the latest available observations of the AdmissionCheck\ncurrent state." items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -101,7 +101,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/clusterqueues.yaml b/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/clusterqueues.yaml index f4331ed57..3d84f6bc5 100644 --- a/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/clusterqueues.yaml +++ b/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/clusterqueues.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "clusterqueues.kueue.x-k8s.io" spec: group: "kueue.x-k8s.io" @@ -80,7 +80,7 @@ spec: type: "array" type: "object" cohort: - description: "cohort that this ClusterQueue belongs to. CQs that belong to the\nsame cohort can borrow unused resources from each other.\n\n\nA CQ can be a member of a single borrowing cohort. A workload submitted\nto a queue referencing this CQ can borrow quota from any CQ in the cohort.\nOnly quota for the [resource, flavor] pairs listed in the CQ can be\nborrowed.\nIf empty, this ClusterQueue cannot borrow from any other ClusterQueue and\nvice versa.\n\n\nA cohort is a name that links CQs together, but it doesn't reference any\nobject.\n\n\nValidation of a cohort name is equivalent to that of object names:\nsubdomain in DNS (RFC 1123)." + description: "cohort that this ClusterQueue belongs to. CQs that belong to the\nsame cohort can borrow unused resources from each other.\n\nA CQ can be a member of a single borrowing cohort. A workload submitted\nto a queue referencing this CQ can borrow quota from any CQ in the cohort.\nOnly quota for the [resource, flavor] pairs listed in the CQ can be\nborrowed.\nIf empty, this ClusterQueue cannot borrow from any other ClusterQueue and\nvice versa.\n\nA cohort is a name that links CQs together, but it doesn't reference any\nobject.\n\nValidation of a cohort name is equivalent to that of object names:\nsubdomain in DNS (RFC 1123)." maxLength: 253 pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" type: "string" @@ -102,14 +102,14 @@ spec: properties: whenCanBorrow: default: "Borrow" - description: "whenCanBorrow determines whether a workload should try the next flavor\nbefore borrowing in current flavor. The possible values are:\n\n\n- `Borrow` (default): allocate in current flavor if borrowing\n is possible.\n- `TryNextFlavor`: try next flavor even if the current\n flavor has enough resources to borrow." + description: "whenCanBorrow determines whether a workload should try the next flavor\nbefore borrowing in current flavor. The possible values are:\n\n- `Borrow` (default): allocate in current flavor if borrowing\n is possible.\n- `TryNextFlavor`: try next flavor even if the current\n flavor has enough resources to borrow." enum: - "Borrow" - "TryNextFlavor" type: "string" whenCanPreempt: default: "TryNextFlavor" - description: "whenCanPreempt determines whether a workload should try the next flavor\nbefore borrowing in current flavor. The possible values are:\n\n\n- `Preempt`: allocate in current flavor if it's possible to preempt some workloads.\n- `TryNextFlavor` (default): try next flavor even if there are enough\n candidates for preemption in the current flavor." + description: "whenCanPreempt determines whether a workload should try the next flavor\nbefore borrowing in current flavor. The possible values are:\n\n- `Preempt`: allocate in current flavor if it's possible to preempt some workloads.\n- `TryNextFlavor` (default): try next flavor even if there are enough\n candidates for preemption in the current flavor." enum: - "Preempt" - "TryNextFlavor" @@ -150,7 +150,7 @@ spec: x-kubernetes-map-type: "atomic" preemption: default: {} - description: "preemption describes policies to preempt Workloads from this ClusterQueue\nor the ClusterQueue's cohort.\n\n\nPreemption can happen in two scenarios:\n\n\n- When a Workload fits within the nominal quota of the ClusterQueue, but\n the quota is currently borrowed by other ClusterQueues in the cohort.\n Preempting Workloads in other ClusterQueues allows this ClusterQueue to\n reclaim its nominal quota.\n- When a Workload doesn't fit within the nominal quota of the ClusterQueue\n and there are admitted Workloads in the ClusterQueue with lower priority.\n\n\nThe preemption algorithm tries to find a minimal set of Workloads to\npreempt to accomomdate the pending Workload, preempting Workloads with\nlower priority first." + description: "preemption describes policies to preempt Workloads from this ClusterQueue\nor the ClusterQueue's cohort.\n\nPreemption can happen in two scenarios:\n\n- When a Workload fits within the nominal quota of the ClusterQueue, but\n the quota is currently borrowed by other ClusterQueues in the cohort.\n Preempting Workloads in other ClusterQueues allows this ClusterQueue to\n reclaim its nominal quota.\n- When a Workload doesn't fit within the nominal quota of the ClusterQueue\n and there are admitted Workloads in the ClusterQueue with lower priority.\n\nThe preemption algorithm tries to find a minimal set of Workloads to\npreempt to accomomdate the pending Workload, preempting Workloads with\nlower priority first." properties: borrowWithinCohort: default: {} @@ -170,7 +170,7 @@ spec: type: "object" reclaimWithinCohort: default: "Never" - description: "reclaimWithinCohort determines whether a pending Workload can preempt\nWorkloads from other ClusterQueues in the cohort that are using more than\ntheir nominal quota. The possible values are:\n\n\n- `Never` (default): do not preempt Workloads in the cohort.\n- `LowerPriority`: if the pending Workload fits within the nominal\n quota of its ClusterQueue, only preempt Workloads in the cohort that have\n lower priority than the pending Workload.\n- `Any`: if the pending Workload fits within the nominal quota of its\n ClusterQueue, preempt any Workload in the cohort, irrespective of\n priority." + description: "reclaimWithinCohort determines whether a pending Workload can preempt\nWorkloads from other ClusterQueues in the cohort that are using more than\ntheir nominal quota. The possible values are:\n\n- `Never` (default): do not preempt Workloads in the cohort.\n- `LowerPriority`: if the pending Workload fits within the nominal\n quota of its ClusterQueue, only preempt Workloads in the cohort that have\n lower priority than the pending Workload.\n- `Any`: if the pending Workload fits within the nominal quota of its\n ClusterQueue, preempt any Workload in the cohort, irrespective of\n priority." enum: - "Never" - "LowerPriority" @@ -178,7 +178,7 @@ spec: type: "string" withinClusterQueue: default: "Never" - description: "withinClusterQueue determines whether a pending Workload that doesn't fit\nwithin the nominal quota for its ClusterQueue, can preempt active Workloads in\nthe ClusterQueue. The possible values are:\n\n\n- `Never` (default): do not preempt Workloads in the ClusterQueue.\n- `LowerPriority`: only preempt Workloads in the ClusterQueue that have\n lower priority than the pending Workload.\n- `LowerOrNewerEqualPriority`: only preempt Workloads in the ClusterQueue that\n either have a lower priority than the pending workload or equal priority\n and are newer than the pending workload." + description: "withinClusterQueue determines whether a pending Workload that doesn't fit\nwithin the nominal quota for its ClusterQueue, can preempt active Workloads in\nthe ClusterQueue. The possible values are:\n\n- `Never` (default): do not preempt Workloads in the ClusterQueue.\n- `LowerPriority`: only preempt Workloads in the ClusterQueue that have\n lower priority than the pending Workload.\n- `LowerOrNewerEqualPriority`: only preempt Workloads in the ClusterQueue that\n either have a lower priority than the pending workload or equal priority\n and are newer than the pending workload." enum: - "Never" - "LowerPriority" @@ -190,7 +190,7 @@ spec: rule: "!(self.reclaimWithinCohort == 'Never' && has(self.borrowWithinCohort) && self.borrowWithinCohort.policy != 'Never')" queueingStrategy: default: "BestEffortFIFO" - description: "QueueingStrategy indicates the queueing strategy of the workloads\nacross the queues in this ClusterQueue.\nCurrent Supported Strategies:\n\n\n- StrictFIFO: workloads are ordered strictly by creation time.\nOlder workloads that can't be admitted will block admitting newer\nworkloads even if they fit available quota.\n- BestEffortFIFO: workloads are ordered by creation time,\nhowever older workloads that can't be admitted will not block\nadmitting newer workloads that fit existing quota." + description: "QueueingStrategy indicates the queueing strategy of the workloads\nacross the queues in this ClusterQueue.\nCurrent Supported Strategies:\n\n- StrictFIFO: workloads are ordered strictly by creation time.\nOlder workloads that can't be admitted will block admitting newer\nworkloads even if they fit available quota.\n- BestEffortFIFO: workloads are ordered by creation time,\nhowever older workloads that can't be admitted will not block\nadmitting newer workloads that fit existing quota." enum: - "StrictFIFO" - "BestEffortFIFO" @@ -241,7 +241,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "nominalQuota is the quantity of this resource that is available for\nWorkloads admitted by this ClusterQueue at a point in time.\nThe nominalQuota must be non-negative.\nnominalQuota should represent the resources in the cluster available for\nrunning jobs (after discounting resources consumed by system components\nand pods not managed by kueue). In an autoscaled cluster, nominalQuota\nshould account for resources that can be provided by a component such as\nKubernetes cluster-autoscaler.\n\n\nIf the ClusterQueue belongs to a cohort, the sum of the quotas for each\n(flavor, resource) combination defines the maximum quantity that can be\nallocated by a ClusterQueue in the cohort." + description: "nominalQuota is the quantity of this resource that is available for\nWorkloads admitted by this ClusterQueue at a point in time.\nThe nominalQuota must be non-negative.\nnominalQuota should represent the resources in the cluster available for\nrunning jobs (after discounting resources consumed by system components\nand pods not managed by kueue). In an autoscaled cluster, nominalQuota\nshould account for resources that can be provided by a component such as\nKubernetes cluster-autoscaler.\n\nIf the ClusterQueue belongs to a cohort, the sum of the quotas for each\n(flavor, resource) combination defines the maximum quantity that can be\nallocated by a ClusterQueue in the cohort." pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true required: @@ -276,7 +276,7 @@ spec: x-kubernetes-list-type: "atomic" stopPolicy: default: "None" - description: "stopPolicy - if set to a value different from None, the ClusterQueue is considered Inactive, no new reservation being\nmade.\n\n\nDepending on its value, its associated workloads will:\n\n\n- None - Workloads are admitted\n- HoldAndDrain - Admitted workloads are evicted and Reserving workloads will cancel the reservation.\n- Hold - Admitted workloads will run to completion and Reserving workloads will cancel the reservation." + description: "stopPolicy - if set to a value different from None, the ClusterQueue is considered Inactive, no new reservation being\nmade.\n\nDepending on its value, its associated workloads will:\n\n- None - Workloads are admitted\n- HoldAndDrain - Admitted workloads are evicted and Reserving workloads will cancel the reservation.\n- Hold - Admitted workloads will run to completion and Reserving workloads will cancel the reservation." enum: - "None" - "Hold" @@ -296,7 +296,7 @@ spec: conditions: description: "conditions hold the latest available observations of the ClusterQueue\ncurrent state." items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -325,7 +325,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/localqueues.yaml b/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/localqueues.yaml index 465f69a6a..5ec07adff 100644 --- a/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/localqueues.yaml +++ b/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/localqueues.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "localqueues.kueue.x-k8s.io" spec: group: "kueue.x-k8s.io" @@ -56,7 +56,7 @@ spec: rule: "self == oldSelf" stopPolicy: default: "None" - description: "stopPolicy - if set to a value different from None, the LocalQueue is considered Inactive,\nno new reservation being made.\n\n\nDepending on its value, its associated workloads will:\n\n\n- None - Workloads are admitted\n- HoldAndDrain - Admitted workloads are evicted and Reserving workloads will cancel the reservation.\n- Hold - Admitted workloads will run to completion and Reserving workloads will cancel the reservation." + description: "stopPolicy - if set to a value different from None, the LocalQueue is considered Inactive,\nno new reservation being made.\n\nDepending on its value, its associated workloads will:\n\n- None - Workloads are admitted\n- HoldAndDrain - Admitted workloads are evicted and Reserving workloads will cancel the reservation.\n- Hold - Admitted workloads will run to completion and Reserving workloads will cancel the reservation." enum: - "None" - "Hold" @@ -73,7 +73,7 @@ spec: conditions: description: "Conditions hold the latest available observations of the LocalQueue\ncurrent state." items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -102,7 +102,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/resourceflavors.yaml b/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/resourceflavors.yaml index 632d43c24..1f0c93215 100644 --- a/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/resourceflavors.yaml +++ b/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/resourceflavors.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "resourceflavors.kueue.x-k8s.io" spec: group: "kueue.x-k8s.io" @@ -36,12 +36,12 @@ spec: nodeLabels: additionalProperties: type: "string" - description: "nodeLabels are labels that associate the ResourceFlavor with Nodes that\nhave the same labels.\nWhen a Workload is admitted, its podsets can only get assigned\nResourceFlavors whose nodeLabels match the nodeSelector and nodeAffinity\nfields.\nOnce a ResourceFlavor is assigned to a podSet, the ResourceFlavor's\nnodeLabels should be injected into the pods of the Workload by the\ncontroller that integrates with the Workload object.\n\n\nnodeLabels can be up to 8 elements." + description: "nodeLabels are labels that associate the ResourceFlavor with Nodes that\nhave the same labels.\nWhen a Workload is admitted, its podsets can only get assigned\nResourceFlavors whose nodeLabels match the nodeSelector and nodeAffinity\nfields.\nOnce a ResourceFlavor is assigned to a podSet, the ResourceFlavor's\nnodeLabels should be injected into the pods of the Workload by the\ncontroller that integrates with the Workload object.\n\nnodeLabels can be up to 8 elements." maxProperties: 8 type: "object" x-kubernetes-map-type: "atomic" nodeTaints: - description: "nodeTaints are taints that the nodes associated with this ResourceFlavor\nhave.\nWorkloads' podsets must have tolerations for these nodeTaints in order to\nget assigned this ResourceFlavor during admission.\n\n\nAn example of a nodeTaint is\ncloud.provider.com/preemptible=\"true\":NoSchedule\n\n\nnodeTaints can be up to 8 elements." + description: "nodeTaints are taints that the nodes associated with this ResourceFlavor\nhave.\nWorkloads' podsets must have tolerations for these nodeTaints in order to\nget assigned this ResourceFlavor during admission.\n\nAn example of a nodeTaint is\ncloud.provider.com/preemptible=\"true\":NoSchedule\n\nnodeTaints can be up to 8 elements." items: description: "The node this Taint is attached to has the \"effect\" on\nany pod that does not tolerate the Taint." properties: @@ -69,7 +69,7 @@ spec: - message: "supported taint effect values: 'NoSchedule', 'PreferNoSchedule', 'NoExecute'" rule: "self.all(x, x.effect in ['NoSchedule', 'PreferNoSchedule', 'NoExecute'])" tolerations: - description: "tolerations are extra tolerations that will be added to the pods admitted in\nthe quota associated with this resource flavor.\n\n\nAn example of a toleration is\ncloud.provider.com/preemptible=\"true\":NoSchedule\n\n\ntolerations can be up to 8 elements." + description: "tolerations are extra tolerations that will be added to the pods admitted in\nthe quota associated with this resource flavor.\n\nAn example of a toleration is\ncloud.provider.com/preemptible=\"true\":NoSchedule\n\ntolerations can be up to 8 elements." items: description: "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." properties: diff --git a/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/workloads.yaml b/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/workloads.yaml index f4c012813..19bfc849f 100644 --- a/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/workloads.yaml +++ b/crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/workloads.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.15.0" + controller-gen.kubebuilder.io/version: "v0.16.1" name: "workloads.kueue.x-k8s.io" spec: group: "kueue.x-k8s.io" @@ -54,7 +54,7 @@ spec: properties: active: default: true - description: "Active determines if a workload can be admitted into a queue.\nChanging active from true to false will evict any running workloads.\nPossible values are:\n\n\n - false: indicates that a workload should never be admitted and evicts running workloads\n - true: indicates that a workload can be evaluated for admission into it's respective queue.\n\n\nDefaults to true" + description: "Active determines if a workload can be admitted into a queue.\nChanging active from true to false will evict any running workloads.\nPossible values are:\n\n - false: indicates that a workload should never be admitted and evicts running workloads\n - true: indicates that a workload can be evaluated for admission into it's respective queue.\n\nDefaults to true" type: "boolean" podSets: description: "podSets is a list of sets of homogeneous pods, each described by a Pod spec\nand a count.\nThere must be at least one element and at most 8.\npodSets cannot be changed." @@ -67,7 +67,7 @@ spec: minimum: 0.0 type: "integer" minCount: - description: "minCount is the minimum number of pods for the spec acceptable\nif the workload supports partial admission.\n\n\nIf not provided, partial admission for the current PodSet is not\nenabled.\n\n\nOnly one podSet within the workload can use this.\n\n\nThis is an alpha field and requires enabling PartialAdmission feature gate." + description: "minCount is the minimum number of pods for the spec acceptable\nif the workload supports partial admission.\n\nIf not provided, partial admission for the current PodSet is not\nenabled.\n\nOnly one podSet within the workload can use this.\n\nThis is an alpha field and requires enabling PartialAdmission feature gate." format: "int32" minimum: 1.0 type: "integer" @@ -78,7 +78,7 @@ spec: pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$" type: "string" template: - description: "template is the Pod template.\n\n\nThe only allowed fields in template.metadata are labels and annotations.\n\n\nIf requests are omitted for a container or initContainer,\nthey default to the limits if they are explicitly specified for the\ncontainer or initContainer.\n\n\nDuring admission, the rules in nodeSelector and\nnodeAffinity.requiredDuringSchedulingIgnoredDuringExecution that match\nthe keys in the nodeLabels from the ResourceFlavors considered for this\nWorkload are used to filter the ResourceFlavors that can be assigned to\nthis podSet." + description: "template is the Pod template.\n\nThe only allowed fields in template.metadata are labels and annotations.\n\nIf requests are omitted for a container or initContainer,\nthey default to the limits if they are explicitly specified for the\ncontainer or initContainer.\n\nDuring admission, the rules in nodeSelector and\nnodeAffinity.requiredDuringSchedulingIgnoredDuringExecution that match\nthe keys in the nodeLabels from the ResourceFlavors considered for this\nWorkload are used to filter the ResourceFlavors that can be assigned to\nthis podSet." properties: metadata: description: "Standard object's metadata.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata" @@ -287,13 +287,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -392,13 +392,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -496,13 +496,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -601,13 +601,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -703,7 +703,7 @@ spec: type: "string" name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -753,7 +753,7 @@ spec: type: "string" name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -780,7 +780,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -795,7 +795,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -994,7 +994,8 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." + default: "" + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -1132,7 +1133,8 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." + default: "" + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -1232,13 +1234,16 @@ spec: description: "Compute Resources required by this container.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" + request: + description: "Request is the name chosen for a request in the referenced claim.\nIf empty, everything from the claim is made available, otherwise\nonly the result of this request." + type: "string" required: - "name" type: "object" @@ -1308,7 +1313,7 @@ spec: description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default value is Default which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." @@ -1347,7 +1352,7 @@ spec: description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" @@ -1394,7 +1399,8 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." + default: "" + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -1525,7 +1531,7 @@ spec: description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" recursiveReadOnly: - description: "RecursiveReadOnly specifies whether read-only mounts should be handled\nrecursively.\n\n\nIf ReadOnly is false, this field has no meaning and must be unspecified.\n\n\nIf ReadOnly is true, and this field is set to Disabled, the mount is not made\nrecursively read-only. If this field is set to IfPossible, the mount is made\nrecursively read-only, if it is supported by the container runtime. If this\nfield is set to Enabled, the mount is made recursively read-only if it is\nsupported by the container runtime, otherwise the pod will not be started and\nan error will be generated to indicate the reason.\n\n\nIf this field is set to IfPossible or Enabled, MountPropagation must be set to\nNone (or be unspecified, which defaults to None).\n\n\nIf this field is not specified, it is treated as an equivalent of Disabled." + description: "RecursiveReadOnly specifies whether read-only mounts should be handled\nrecursively.\n\nIf ReadOnly is false, this field has no meaning and must be unspecified.\n\nIf ReadOnly is true, and this field is set to Disabled, the mount is not made\nrecursively read-only. If this field is set to IfPossible, the mount is made\nrecursively read-only, if it is supported by the container runtime. If this\nfield is set to Enabled, the mount is made recursively read-only if it is\nsupported by the container runtime, otherwise the pod will not be started and\nan error will be generated to indicate the reason.\n\nIf this field is set to IfPossible or Enabled, MountPropagation must be set to\nNone (or be unspecified, which defaults to None).\n\nIf this field is not specified, it is treated as an equivalent of Disabled." type: "string" subPath: description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." @@ -1589,7 +1595,7 @@ spec: ephemeralContainers: description: "List of ephemeral containers run in this pod. Ephemeral containers may be run in an existing\npod to perform user-initiated actions such as debugging. This list cannot be specified when\ncreating a pod, and it cannot be modified by updating the pod spec. In order to add an\nephemeral container to an existing pod, use the pod's ephemeralcontainers subresource." items: - description: "An EphemeralContainer is a temporary container that you may add to an existing Pod for\nuser-initiated activities such as debugging. Ephemeral containers have no resource or\nscheduling guarantees, and they will not be restarted when they exit or when a Pod is\nremoved or restarted. The kubelet may evict a Pod if an ephemeral container causes the\nPod to exceed its resource allocation.\n\n\nTo add an ephemeral container, use the ephemeralcontainers subresource of an existing\nPod. Ephemeral containers may not be removed or restarted." + description: "An EphemeralContainer is a temporary container that you may add to an existing Pod for\nuser-initiated activities such as debugging. Ephemeral containers have no resource or\nscheduling guarantees, and they will not be restarted when they exit or when a Pod is\nremoved or restarted. The kubelet may evict a Pod if an ephemeral container causes the\nPod to exceed its resource allocation.\n\nTo add an ephemeral container, use the ephemeralcontainers subresource of an existing\nPod. Ephemeral containers may not be removed or restarted." properties: args: description: "Arguments to the entrypoint.\nThe image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell" @@ -1625,7 +1631,7 @@ spec: type: "string" name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -1675,7 +1681,7 @@ spec: type: "string" name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -1702,7 +1708,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -1717,7 +1723,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -1916,7 +1922,8 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." + default: "" + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -2054,7 +2061,8 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." + default: "" + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -2154,13 +2162,16 @@ spec: description: "Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources\nalready allocated to the pod." properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" + request: + description: "Request is the name chosen for a request in the referenced claim.\nIf empty, everything from the claim is made available, otherwise\nonly the result of this request." + type: "string" required: - "name" type: "object" @@ -2230,7 +2241,7 @@ spec: description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default value is Default which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." @@ -2269,7 +2280,7 @@ spec: description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" @@ -2316,7 +2327,8 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." + default: "" + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -2402,7 +2414,7 @@ spec: description: "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false" type: "boolean" targetContainerName: - description: "If set, the name of the container from PodSpec that this ephemeral container targets.\nThe ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.\nIf not set then the ephemeral container uses the namespaces configured in the Pod spec.\n\n\nThe container runtime must implement support for this feature. If the runtime does not\nsupport namespace targeting then the result of setting this field is undefined." + description: "If set, the name of the container from PodSpec that this ephemeral container targets.\nThe ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.\nIf not set then the ephemeral container uses the namespaces configured in the Pod spec.\n\nThe container runtime must implement support for this feature. If the runtime does not\nsupport namespace targeting then the result of setting this field is undefined." type: "string" terminationMessagePath: description: "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated." @@ -2450,7 +2462,7 @@ spec: description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" recursiveReadOnly: - description: "RecursiveReadOnly specifies whether read-only mounts should be handled\nrecursively.\n\n\nIf ReadOnly is false, this field has no meaning and must be unspecified.\n\n\nIf ReadOnly is true, and this field is set to Disabled, the mount is not made\nrecursively read-only. If this field is set to IfPossible, the mount is made\nrecursively read-only, if it is supported by the container runtime. If this\nfield is set to Enabled, the mount is made recursively read-only if it is\nsupported by the container runtime, otherwise the pod will not be started and\nan error will be generated to indicate the reason.\n\n\nIf this field is set to IfPossible or Enabled, MountPropagation must be set to\nNone (or be unspecified, which defaults to None).\n\n\nIf this field is not specified, it is treated as an equivalent of Disabled." + description: "RecursiveReadOnly specifies whether read-only mounts should be handled\nrecursively.\n\nIf ReadOnly is false, this field has no meaning and must be unspecified.\n\nIf ReadOnly is true, and this field is set to Disabled, the mount is not made\nrecursively read-only. If this field is set to IfPossible, the mount is made\nrecursively read-only, if it is supported by the container runtime. If this\nfield is set to Enabled, the mount is made recursively read-only if it is\nsupported by the container runtime, otherwise the pod will not be started and\nan error will be generated to indicate the reason.\n\nIf this field is set to IfPossible or Enabled, MountPropagation must be set to\nNone (or be unspecified, which defaults to None).\n\nIf this field is not specified, it is treated as an equivalent of Disabled." type: "string" subPath: description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." @@ -2519,7 +2531,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -2566,7 +2578,7 @@ spec: type: "string" name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the ConfigMap or its key must be defined" @@ -2616,7 +2628,7 @@ spec: type: "string" name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the Secret or its key must be defined" @@ -2643,7 +2655,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the ConfigMap must be defined" @@ -2658,7 +2670,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "Specify whether the Secret must be defined" @@ -2857,7 +2869,8 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." + default: "" + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -2995,7 +3008,8 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." + default: "" + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -3095,13 +3109,16 @@ spec: description: "Compute Resources required by this container.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" + request: + description: "Request is the name chosen for a request in the referenced claim.\nIf empty, everything from the claim is made available, otherwise\nonly the result of this request." + type: "string" required: - "name" type: "object" @@ -3171,7 +3188,7 @@ spec: description: "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows." type: "boolean" procMount: - description: "procMount denotes the type of proc mount to use for the containers.\nThe default is DefaultProcMount which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." + description: "procMount denotes the type of proc mount to use for the containers.\nThe default value is Default which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows." type: "string" readOnlyRootFilesystem: description: "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows." @@ -3210,7 +3227,7 @@ spec: description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" @@ -3257,7 +3274,8 @@ spec: format: "int32" type: "integer" service: - description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\n\nIf this is not specified, the default behavior is defined by gRPC." + default: "" + description: "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\nIf this is not specified, the default behavior is defined by gRPC." type: "string" required: - "port" @@ -3388,7 +3406,7 @@ spec: description: "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false." type: "boolean" recursiveReadOnly: - description: "RecursiveReadOnly specifies whether read-only mounts should be handled\nrecursively.\n\n\nIf ReadOnly is false, this field has no meaning and must be unspecified.\n\n\nIf ReadOnly is true, and this field is set to Disabled, the mount is not made\nrecursively read-only. If this field is set to IfPossible, the mount is made\nrecursively read-only, if it is supported by the container runtime. If this\nfield is set to Enabled, the mount is made recursively read-only if it is\nsupported by the container runtime, otherwise the pod will not be started and\nan error will be generated to indicate the reason.\n\n\nIf this field is set to IfPossible or Enabled, MountPropagation must be set to\nNone (or be unspecified, which defaults to None).\n\n\nIf this field is not specified, it is treated as an equivalent of Disabled." + description: "RecursiveReadOnly specifies whether read-only mounts should be handled\nrecursively.\n\nIf ReadOnly is false, this field has no meaning and must be unspecified.\n\nIf ReadOnly is true, and this field is set to Disabled, the mount is not made\nrecursively read-only. If this field is set to IfPossible, the mount is made\nrecursively read-only, if it is supported by the container runtime. If this\nfield is set to Enabled, the mount is made recursively read-only if it is\nsupported by the container runtime, otherwise the pod will not be started and\nan error will be generated to indicate the reason.\n\nIf this field is set to IfPossible or Enabled, MountPropagation must be set to\nNone (or be unspecified, which defaults to None).\n\nIf this field is not specified, it is treated as an equivalent of Disabled." type: "string" subPath: description: "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root)." @@ -3415,7 +3433,7 @@ spec: - "name" x-kubernetes-list-type: "map" nodeName: - description: "NodeName is a request to schedule this pod onto a specific node. If it is non-empty,\nthe scheduler simply schedules this pod onto that node, assuming that it fits resource\nrequirements." + description: "NodeName indicates in which node this pod is scheduled.\nIf empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.\nOnce this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.\nThis field should not be used to express a desire for the pod to be scheduled on a specific node.\nhttps://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodename" type: "string" nodeSelector: additionalProperties: @@ -3424,7 +3442,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" os: - description: "Specifies the OS of the containers in the pod.\nSome pod and container fields are restricted if this is set.\n\n\nIf the OS field is set to linux, the following fields must be unset:\n-securityContext.windowsOptions\n\n\nIf the OS field is set to windows, following fields must be unset:\n- spec.hostPID\n- spec.hostIPC\n- spec.hostUsers\n- spec.securityContext.appArmorProfile\n- spec.securityContext.seLinuxOptions\n- spec.securityContext.seccompProfile\n- spec.securityContext.fsGroup\n- spec.securityContext.fsGroupChangePolicy\n- spec.securityContext.sysctls\n- spec.shareProcessNamespace\n- spec.securityContext.runAsUser\n- spec.securityContext.runAsGroup\n- spec.securityContext.supplementalGroups\n- spec.containers[*].securityContext.appArmorProfile\n- spec.containers[*].securityContext.seLinuxOptions\n- spec.containers[*].securityContext.seccompProfile\n- spec.containers[*].securityContext.capabilities\n- spec.containers[*].securityContext.readOnlyRootFilesystem\n- spec.containers[*].securityContext.privileged\n- spec.containers[*].securityContext.allowPrivilegeEscalation\n- spec.containers[*].securityContext.procMount\n- spec.containers[*].securityContext.runAsUser\n- spec.containers[*].securityContext.runAsGroup" + description: "Specifies the OS of the containers in the pod.\nSome pod and container fields are restricted if this is set.\n\nIf the OS field is set to linux, the following fields must be unset:\n-securityContext.windowsOptions\n\nIf the OS field is set to windows, following fields must be unset:\n- spec.hostPID\n- spec.hostIPC\n- spec.hostUsers\n- spec.securityContext.appArmorProfile\n- spec.securityContext.seLinuxOptions\n- spec.securityContext.seccompProfile\n- spec.securityContext.fsGroup\n- spec.securityContext.fsGroupChangePolicy\n- spec.securityContext.sysctls\n- spec.shareProcessNamespace\n- spec.securityContext.runAsUser\n- spec.securityContext.runAsGroup\n- spec.securityContext.supplementalGroups\n- spec.securityContext.supplementalGroupsPolicy\n- spec.containers[*].securityContext.appArmorProfile\n- spec.containers[*].securityContext.seLinuxOptions\n- spec.containers[*].securityContext.seccompProfile\n- spec.containers[*].securityContext.capabilities\n- spec.containers[*].securityContext.readOnlyRootFilesystem\n- spec.containers[*].securityContext.privileged\n- spec.containers[*].securityContext.allowPrivilegeEscalation\n- spec.containers[*].securityContext.procMount\n- spec.containers[*].securityContext.runAsUser\n- spec.containers[*].securityContext.runAsGroup" properties: name: description: "Name is the name of the operating system. The currently supported values are linux and windows.\nAdditional value may be defined in future and can be one of:\nhttps://github.com/opencontainers/runtime-spec/blob/master/config.md#platform-specific-configuration\nClients should expect to handle additional values and treat unrecognized values in this field as os: null" @@ -3465,23 +3483,19 @@ spec: type: "array" x-kubernetes-list-type: "atomic" resourceClaims: - description: "ResourceClaims defines which ResourceClaims must be allocated\nand reserved before the Pod is allowed to start. The resources\nwill be made available to those containers which consume them\nby name.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable." + description: "ResourceClaims defines which ResourceClaims must be allocated\nand reserved before the Pod is allowed to start. The resources\nwill be made available to those containers which consume them\nby name.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable." items: - description: "PodResourceClaim references exactly one ResourceClaim through a ClaimSource.\nIt adds a name to it that uniquely identifies the ResourceClaim inside the Pod.\nContainers that need access to the ResourceClaim reference it with this name." + description: "PodResourceClaim references exactly one ResourceClaim, either directly\nor by naming a ResourceClaimTemplate which is then turned into a ResourceClaim\nfor the pod.\n\nIt adds a name to it that uniquely identifies the ResourceClaim inside the Pod.\nContainers that need access to the ResourceClaim reference it with this name." properties: name: description: "Name uniquely identifies this resource claim inside the pod.\nThis must be a DNS_LABEL." type: "string" - source: - description: "Source describes where to find the ResourceClaim." - properties: - resourceClaimName: - description: "ResourceClaimName is the name of a ResourceClaim object in the same\nnamespace as this pod." - type: "string" - resourceClaimTemplateName: - description: "ResourceClaimTemplateName is the name of a ResourceClaimTemplate\nobject in the same namespace as this pod.\n\n\nThe template will be used to create a new ResourceClaim, which will\nbe bound to this pod. When this pod is deleted, the ResourceClaim\nwill also be deleted. The pod name and resource name, along with a\ngenerated component, will be used to form a unique name for the\nResourceClaim, which will be recorded in pod.status.resourceClaimStatuses.\n\n\nThis field is immutable and no changes will be made to the\ncorresponding ResourceClaim by the control plane after creating the\nResourceClaim." - type: "string" - type: "object" + resourceClaimName: + description: "ResourceClaimName is the name of a ResourceClaim object in the same\nnamespace as this pod.\n\nExactly one of ResourceClaimName and ResourceClaimTemplateName must\nbe set." + type: "string" + resourceClaimTemplateName: + description: "ResourceClaimTemplateName is the name of a ResourceClaimTemplate\nobject in the same namespace as this pod.\n\nThe template will be used to create a new ResourceClaim, which will\nbe bound to this pod. When this pod is deleted, the ResourceClaim\nwill also be deleted. The pod name and resource name, along with a\ngenerated component, will be used to form a unique name for the\nResourceClaim, which will be recorded in pod.status.resourceClaimStatuses.\n\nThis field is immutable and no changes will be made to the\ncorresponding ResourceClaim by the control plane after creating the\nResourceClaim.\n\nExactly one of ResourceClaimName and ResourceClaimTemplateName must\nbe set." + type: "string" required: - "name" type: "object" @@ -3499,7 +3513,7 @@ spec: description: "If specified, the pod will be dispatched by specified scheduler.\nIf not specified, the pod will be dispatched by default scheduler." type: "string" schedulingGates: - description: "SchedulingGates is an opaque list of values that if specified will block scheduling the pod.\nIf schedulingGates is not empty, the pod will stay in the SchedulingGated state and the\nscheduler will not attempt to schedule the pod.\n\n\nSchedulingGates can only be set at pod creation time, and be removed only afterwards." + description: "SchedulingGates is an opaque list of values that if specified will block scheduling the pod.\nIf schedulingGates is not empty, the pod will stay in the SchedulingGated state and the\nscheduler will not attempt to schedule the pod.\n\nSchedulingGates can only be set at pod creation time, and be removed only afterwards." items: description: "PodSchedulingGate is associated to a Pod to guard its scheduling." properties: @@ -3529,7 +3543,7 @@ spec: - "type" type: "object" fsGroup: - description: "A special supplemental group that applies to all containers in a pod.\nSome volume types allow the Kubelet to change the ownership of that volume\nto be owned by the pod:\n\n\n1. The owning GID will be the FSGroup\n2. The setgid bit is set (new files created in the volume will be owned by FSGroup)\n3. The permission bits are OR'd with rw-rw----\n\n\nIf unset, the Kubelet will not modify the ownership and permissions of any volume.\nNote that this field cannot be set when spec.os.name is windows." + description: "A special supplemental group that applies to all containers in a pod.\nSome volume types allow the Kubelet to change the ownership of that volume\nto be owned by the pod:\n\n1. The owning GID will be the FSGroup\n2. The setgid bit is set (new files created in the volume will be owned by FSGroup)\n3. The permission bits are OR'd with rw-rw----\n\nIf unset, the Kubelet will not modify the ownership and permissions of any volume.\nNote that this field cannot be set when spec.os.name is windows." format: "int64" type: "integer" fsGroupChangePolicy: @@ -3569,18 +3583,21 @@ spec: description: "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type." type: "string" type: - description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." + description: "type indicates which kind of seccomp profile will be applied.\nValid options are:\n\nLocalhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied." type: "string" required: - "type" type: "object" supplementalGroups: - description: "A list of groups applied to the first process run in each container, in addition\nto the container's primary GID, the fsGroup (if specified), and group memberships\ndefined in the container image for the uid of the container process. If unspecified,\nno additional groups are added to any container. Note that group memberships\ndefined in the container image for the uid of the container process are still effective,\neven if they are not included in this list.\nNote that this field cannot be set when spec.os.name is windows." + description: "A list of groups applied to the first process run in each container, in\naddition to the container's primary GID and fsGroup (if specified). If\nthe SupplementalGroupsPolicy feature is enabled, the\nsupplementalGroupsPolicy field determines whether these are in addition\nto or instead of any group memberships defined in the container image.\nIf unspecified, no additional groups are added, though group memberships\ndefined in the container image may still be used, depending on the\nsupplementalGroupsPolicy field.\nNote that this field cannot be set when spec.os.name is windows." items: format: "int64" type: "integer" type: "array" x-kubernetes-list-type: "atomic" + supplementalGroupsPolicy: + description: "Defines how supplemental groups of the first container processes are calculated.\nValid values are \"Merge\" and \"Strict\". If not specified, \"Merge\" is used.\n(Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled\nand the container runtime must implement support for this feature.\nNote that this field cannot be set when spec.os.name is windows." + type: "string" sysctls: description: "Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported\nsysctls (by the container runtime) might fail to launch.\nNote that this field cannot be set when spec.os.name is windows." items: @@ -3697,7 +3714,7 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select the pods over which\nspreading will be calculated. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are ANDed with labelSelector\nto select the group of existing pods over which spreading will be calculated\nfor the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nMatchLabelKeys cannot be set when LabelSelector isn't set.\nKeys that don't exist in the incoming pod labels will\nbe ignored. A null or empty list means only match against labelSelector.\n\n\nThis is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default)." + description: "MatchLabelKeys is a set of pod label keys to select the pods over which\nspreading will be calculated. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are ANDed with labelSelector\nto select the group of existing pods over which spreading will be calculated\nfor the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nMatchLabelKeys cannot be set when LabelSelector isn't set.\nKeys that don't exist in the incoming pod labels will\nbe ignored. A null or empty list means only match against labelSelector.\n\nThis is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default)." items: type: "string" type: "array" @@ -3707,14 +3724,14 @@ spec: format: "int32" type: "integer" minDomains: - description: "MinDomains indicates a minimum number of eligible domains.\nWhen the number of eligible domains with matching topology keys is less than minDomains,\nPod Topology Spread treats \"global minimum\" as 0, and then the calculation of Skew is performed.\nAnd when the number of eligible domains with matching topology keys equals or greater than minDomains,\nthis value has no effect on scheduling.\nAs a result, when the number of eligible domains is less than minDomains,\nscheduler won't schedule more than maxSkew Pods to those domains.\nIf value is nil, the constraint behaves as if MinDomains is equal to 1.\nValid values are integers greater than 0.\nWhen value is not nil, WhenUnsatisfiable must be DoNotSchedule.\n\n\nFor example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same\nlabelSelector spread as 2/2/2:\n| zone1 | zone2 | zone3 |\n| P P | P P | P P |\nThe number of domains is less than 5(MinDomains), so \"global minimum\" is treated as 0.\nIn this situation, new pod with the same labelSelector cannot be scheduled,\nbecause computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones,\nit will violate MaxSkew." + description: "MinDomains indicates a minimum number of eligible domains.\nWhen the number of eligible domains with matching topology keys is less than minDomains,\nPod Topology Spread treats \"global minimum\" as 0, and then the calculation of Skew is performed.\nAnd when the number of eligible domains with matching topology keys equals or greater than minDomains,\nthis value has no effect on scheduling.\nAs a result, when the number of eligible domains is less than minDomains,\nscheduler won't schedule more than maxSkew Pods to those domains.\nIf value is nil, the constraint behaves as if MinDomains is equal to 1.\nValid values are integers greater than 0.\nWhen value is not nil, WhenUnsatisfiable must be DoNotSchedule.\n\nFor example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same\nlabelSelector spread as 2/2/2:\n| zone1 | zone2 | zone3 |\n| P P | P P | P P |\nThe number of domains is less than 5(MinDomains), so \"global minimum\" is treated as 0.\nIn this situation, new pod with the same labelSelector cannot be scheduled,\nbecause computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones,\nit will violate MaxSkew." format: "int32" type: "integer" nodeAffinityPolicy: - description: "NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector\nwhen calculating pod topology spread skew. Options are:\n- Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.\n- Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.\n\n\nIf this value is nil, the behavior is equivalent to the Honor policy.\nThis is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag." + description: "NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector\nwhen calculating pod topology spread skew. Options are:\n- Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.\n- Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.\n\nIf this value is nil, the behavior is equivalent to the Honor policy.\nThis is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag." type: "string" nodeTaintsPolicy: - description: "NodeTaintsPolicy indicates how we will treat node taints when calculating\npod topology spread skew. Options are:\n- Honor: nodes without taints, along with tainted nodes for which the incoming pod\nhas a toleration, are included.\n- Ignore: node taints are ignored. All nodes are included.\n\n\nIf this value is nil, the behavior is equivalent to the Ignore policy.\nThis is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag." + description: "NodeTaintsPolicy indicates how we will treat node taints when calculating\npod topology spread skew. Options are:\n- Honor: nodes without taints, along with tainted nodes for which the incoming pod\nhas a toleration, are included.\n- Ignore: node taints are ignored. All nodes are included.\n\nIf this value is nil, the behavior is equivalent to the Ignore policy.\nThis is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag." type: "string" topologyKey: description: "TopologyKey is the key of node labels. Nodes that have a label with this key\nand identical values are considered to be in the same topology.\nWe consider each as a \"bucket\", and try to put balanced number\nof pods into each bucket.\nWe define a domain as a particular instance of a topology.\nAlso, we define an eligible domain as a domain whose nodes meet the requirements of\nnodeAffinityPolicy and nodeTaintsPolicy.\ne.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology.\nAnd, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology.\nIt's a required field." @@ -3741,7 +3758,7 @@ spec: description: "awsElasticBlockStore represents an AWS Disk resource that is attached to a\nkubelet's host machine and then exposed to the pod.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore" properties: fsType: - description: "fsType is the filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore\nTODO: how do we prevent errors in the filesystem from compromising the machine" + description: "fsType is the filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore" type: "string" partition: description: "partition is the partition in the volume that you want to mount.\nIf omitted, the default is to mount by volume name.\nExamples: For volume /dev/sda1, you specify the partition as \"1\".\nSimilarly, the volume partition for /dev/sda is \"0\" (or you can leave the property empty)." @@ -3769,12 +3786,14 @@ spec: description: "diskURI is the URI of data disk in the blob storage" type: "string" fsType: + default: "ext4" description: "fsType is Filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified." type: "string" kind: description: "kind expected values are Shared: multiple blob disks per storage account Dedicated: single blob disk per storage account Managed: azure managed data disk (only in managed availability set). defaults to shared" type: "string" readOnly: + default: false description: "readOnly Defaults to false (read/write). ReadOnly here will force\nthe ReadOnly setting in VolumeMounts." type: "boolean" required: @@ -3820,7 +3839,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -3844,7 +3863,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -3884,7 +3903,7 @@ spec: x-kubernetes-list-type: "atomic" name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -3905,7 +3924,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -3993,10 +4012,10 @@ spec: x-kubernetes-int-or-string: true type: "object" ephemeral: - description: "ephemeral represents a volume that is handled by a cluster storage driver.\nThe volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,\nand deleted when the pod is removed.\n\n\nUse this if:\na) the volume is only needed while the pod runs,\nb) features of normal volumes like restoring from snapshot or capacity\n tracking are needed,\nc) the storage driver is specified through a storage class, and\nd) the storage driver supports dynamic volume provisioning through\n a PersistentVolumeClaim (see EphemeralVolumeSource for more\n information on the connection between this volume type\n and PersistentVolumeClaim).\n\n\nUse PersistentVolumeClaim or one of the vendor-specific\nAPIs for volumes that persist for longer than the lifecycle\nof an individual pod.\n\n\nUse CSI for light-weight local ephemeral volumes if the CSI driver is meant to\nbe used that way - see the documentation of the driver for\nmore information.\n\n\nA pod can use both types of ephemeral volumes and\npersistent volumes at the same time." + description: "ephemeral represents a volume that is handled by a cluster storage driver.\nThe volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts,\nand deleted when the pod is removed.\n\nUse this if:\na) the volume is only needed while the pod runs,\nb) features of normal volumes like restoring from snapshot or capacity\n tracking are needed,\nc) the storage driver is specified through a storage class, and\nd) the storage driver supports dynamic volume provisioning through\n a PersistentVolumeClaim (see EphemeralVolumeSource for more\n information on the connection between this volume type\n and PersistentVolumeClaim).\n\nUse PersistentVolumeClaim or one of the vendor-specific\nAPIs for volumes that persist for longer than the lifecycle\nof an individual pod.\n\nUse CSI for light-weight local ephemeral volumes if the CSI driver is meant to\nbe used that way - see the documentation of the driver for\nmore information.\n\nA pod can use both types of ephemeral volumes and\npersistent volumes at the same time." properties: volumeClaimTemplate: - description: "Will be used to create a stand-alone PVC to provision the volume.\nThe pod in which this EphemeralVolumeSource is embedded will be the\nowner of the PVC, i.e. the PVC will be deleted together with the\npod. The name of the PVC will be `-` where\n`` is the name from the `PodSpec.Volumes` array\nentry. Pod validation will reject the pod if the concatenated name\nis not valid for a PVC (for example, too long).\n\n\nAn existing PVC with that name that is not owned by the pod\nwill *not* be used for the pod to avoid using an unrelated\nvolume by mistake. Starting the pod is then blocked until\nthe unrelated PVC is removed. If such a pre-created PVC is\nmeant to be used by the pod, the PVC has to updated with an\nowner reference to the pod once the pod exists. Normally\nthis should not be necessary, but it may be useful when\nmanually reconstructing a broken cluster.\n\n\nThis field is read-only and no changes will be made by Kubernetes\nto the PVC after it has been created.\n\n\nRequired, must not be nil." + description: "Will be used to create a stand-alone PVC to provision the volume.\nThe pod in which this EphemeralVolumeSource is embedded will be the\nowner of the PVC, i.e. the PVC will be deleted together with the\npod. The name of the PVC will be `-` where\n`` is the name from the `PodSpec.Volumes` array\nentry. Pod validation will reject the pod if the concatenated name\nis not valid for a PVC (for example, too long).\n\nAn existing PVC with that name that is not owned by the pod\nwill *not* be used for the pod to avoid using an unrelated\nvolume by mistake. Starting the pod is then blocked until\nthe unrelated PVC is removed. If such a pre-created PVC is\nmeant to be used by the pod, the PVC has to updated with an\nowner reference to the pod once the pod exists. Normally\nthis should not be necessary, but it may be useful when\nmanually reconstructing a broken cluster.\n\nThis field is read-only and no changes will be made by Kubernetes\nto the PVC after it has been created.\n\nRequired, must not be nil." properties: metadata: description: "May contain labels and annotations that will be copied into the PVC\nwhen creating it. No other fields are allowed and will be rejected during\nvalidation." @@ -4122,7 +4141,7 @@ spec: description: "storageClassName is the name of the StorageClass required by the claim.\nMore info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1" type: "string" volumeAttributesClassName: - description: "volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.\nIf specified, the CSI driver will create or update the volume with the attributes defined\nin the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,\nit can be changed after the claim is created. An empty string value means that no VolumeAttributesClass\nwill be applied to the claim but it's not allowed to reset this field to empty string once it is set.\nIf unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass\nwill be set by the persistentvolume controller if it exists.\nIf the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be\nset to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource\nexists.\nMore info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/\n(Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled." + description: "volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.\nIf specified, the CSI driver will create or update the volume with the attributes defined\nin the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,\nit can be changed after the claim is created. An empty string value means that no VolumeAttributesClass\nwill be applied to the claim but it's not allowed to reset this field to empty string once it is set.\nIf unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass\nwill be set by the persistentvolume controller if it exists.\nIf the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be\nset to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource\nexists.\nMore info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/\n(Beta) Using this field requires the VolumeAttributesClass feature gate to be enabled (off by default)." type: "string" volumeMode: description: "volumeMode defines what type of volume is required by the claim.\nValue of Filesystem is implied when not included in claim spec." @@ -4139,7 +4158,7 @@ spec: description: "fc represents a Fibre Channel resource that is attached to a kubelet's host machine and then exposed to the pod." properties: fsType: - description: "fsType is the filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nTODO: how do we prevent errors in the filesystem from compromising the machine" + description: "fsType is the filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified." type: "string" lun: description: "lun is Optional: FC target lun number" @@ -4183,7 +4202,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -4204,7 +4223,7 @@ spec: description: "gcePersistentDisk represents a GCE Disk resource that is attached to a\nkubelet's host machine and then exposed to the pod.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk" properties: fsType: - description: "fsType is filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk\nTODO: how do we prevent errors in the filesystem from compromising the machine" + description: "fsType is filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk" type: "string" partition: description: "partition is the partition in the volume that you want to mount.\nIf omitted, the default is to mount by volume name.\nExamples: For volume /dev/sda1, you specify the partition as \"1\".\nSimilarly, the volume partition for /dev/sda is \"0\" (or you can leave the property empty).\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk" @@ -4251,7 +4270,7 @@ spec: - "path" type: "object" hostPath: - description: "hostPath represents a pre-existing file or directory on the host\nmachine that is directly exposed to the container. This is generally\nused for system agents or other privileged things that are allowed\nto see the host machine. Most containers will NOT need this.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath\n---\nTODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not\nmount host directories as read/write." + description: "hostPath represents a pre-existing file or directory on the host\nmachine that is directly exposed to the container. This is generally\nused for system agents or other privileged things that are allowed\nto see the host machine. Most containers will NOT need this.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath" properties: path: description: "path of the directory on the host.\nIf the path is a symlink, it will follow the link to the real path.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath" @@ -4262,6 +4281,16 @@ spec: required: - "path" type: "object" + image: + description: "image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine.\nThe volume is resolved at pod startup depending on which PullPolicy value is provided:\n\n- Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.\n- Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.\n- IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.\n\nThe volume gets re-resolved if the pod gets deleted and recreated, which means that new remote content will become available on pod recreation.\nA failure to resolve or pull the image during pod startup will block containers from starting and may add significant latency. Failures will be retried using normal volume backoff and will be reported on the pod reason and message.\nThe types of objects that may be mounted by this volume are defined by the container runtime implementation on a host machine and at minimum must include all valid types supported by the container image field.\nThe OCI object gets mounted in a single directory (spec.containers[*].volumeMounts.mountPath) by merging the manifest layers in the same way as for container images.\nThe volume will be mounted read-only (ro) and non-executable files (noexec).\nSub path mounts for containers are not supported (spec.containers[*].volumeMounts.subpath).\nThe field spec.securityContext.fsGroupChangePolicy has no effect on this volume type." + properties: + pullPolicy: + description: "Policy for pulling OCI objects. Possible values are:\nAlways: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.\nNever: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.\nIfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise." + type: "string" + reference: + description: "Required: Image or artifact reference to be used.\nBehaves in the same way as pod.spec.containers[*].image.\nPull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets." + type: "string" + type: "object" iscsi: description: "iscsi represents an ISCSI Disk resource that is attached to a\nkubelet's host machine and then exposed to the pod.\nMore info: https://examples.k8s.io/volumes/iscsi/README.md" properties: @@ -4272,7 +4301,7 @@ spec: description: "chapAuthSession defines whether support iSCSI Session CHAP authentication" type: "boolean" fsType: - description: "fsType is the filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi\nTODO: how do we prevent errors in the filesystem from compromising the machine" + description: "fsType is the filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi" type: "string" initiatorName: description: "initiatorName is the custom iSCSI Initiator Name.\nIf initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface\n: will be created for the connection." @@ -4281,6 +4310,7 @@ spec: description: "iqn is the target iSCSI Qualified Name." type: "string" iscsiInterface: + default: "default" description: "iscsiInterface is the interface Name that uses an iSCSI transport.\nDefaults to 'default' (tcp)." type: "string" lun: @@ -4301,7 +4331,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -4379,12 +4409,12 @@ spec: format: "int32" type: "integer" sources: - description: "sources is the list of volume projections" + description: "sources is the list of volume projections. Each entry in this list\nhandles one source." items: - description: "Projection that may be projected along with other supported volume types" + description: "Projection that may be projected along with other supported volume types.\nExactly one of these fields must be set." properties: clusterTrustBundle: - description: "ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field\nof ClusterTrustBundle objects in an auto-updating file.\n\n\nAlpha, gated by the ClusterTrustBundleProjection feature gate.\n\n\nClusterTrustBundle objects can either be selected by name, or by the\ncombination of signer name and a label selector.\n\n\nKubelet performs aggressive normalization of the PEM contents written\ninto the pod filesystem. Esoteric PEM features such as inter-block\ncomments and block headers are stripped. Certificates are deduplicated.\nThe ordering of certificates within the file is arbitrary, and Kubelet\nmay change the order over time." + description: "ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field\nof ClusterTrustBundle objects in an auto-updating file.\n\nAlpha, gated by the ClusterTrustBundleProjection feature gate.\n\nClusterTrustBundle objects can either be selected by name, or by the\ncombination of signer name and a label selector.\n\nKubelet performs aggressive normalization of the PEM contents written\ninto the pod filesystem. Esoteric PEM features such as inter-block\ncomments and block headers are stripped. Certificates are deduplicated.\nThe ordering of certificates within the file is arbitrary, and Kubelet\nmay change the order over time." properties: labelSelector: description: "Select all ClusterTrustBundles that match this label selector. Only has\neffect if signerName is set. Mutually-exclusive with name. If unset,\ninterpreted as \"match nothing\". If set but empty, interpreted as \"match\neverything\"." @@ -4460,7 +4490,7 @@ spec: x-kubernetes-list-type: "atomic" name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "optional specify whether the ConfigMap or its keys must be defined" @@ -4547,7 +4577,7 @@ spec: x-kubernetes-list-type: "atomic" name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" optional: description: "optional field specify whether the Secret or its key must be defined" @@ -4603,12 +4633,13 @@ spec: description: "rbd represents a Rados Block Device mount on the host that shares a pod's lifetime.\nMore info: https://examples.k8s.io/volumes/rbd/README.md" properties: fsType: - description: "fsType is the filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#rbd\nTODO: how do we prevent errors in the filesystem from compromising the machine" + description: "fsType is the filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#rbd" type: "string" image: description: "image is the rados image name.\nMore info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it" type: "string" keyring: + default: "/etc/ceph/keyring" description: "keyring is the path to key ring for RBDUser.\nDefault is /etc/ceph/keyring.\nMore info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it" type: "string" monitors: @@ -4618,6 +4649,7 @@ spec: type: "array" x-kubernetes-list-type: "atomic" pool: + default: "rbd" description: "pool is the rados pool name.\nDefault is rbd.\nMore info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it" type: "string" readOnly: @@ -4628,11 +4660,12 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" type: "object" x-kubernetes-map-type: "atomic" user: + default: "admin" description: "user is the rados user name.\nDefault is admin.\nMore info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it" type: "string" required: @@ -4643,6 +4676,7 @@ spec: description: "scaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes." properties: fsType: + default: "xfs" description: "fsType is the filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\".\nDefault is \"xfs\"." type: "string" gateway: @@ -4659,7 +4693,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -4667,6 +4701,7 @@ spec: description: "sslEnabled Flag enable/disable SSL communication with Gateway, default false" type: "boolean" storageMode: + default: "ThinProvisioned" description: "storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.\nDefault is ThinProvisioned." type: "string" storagePool: @@ -4732,7 +4767,7 @@ spec: properties: name: default: "" - description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nTODO: Add other useful fields. apiVersion, kind, uid?\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" type: "string" type: "object" x-kubernetes-map-type: "atomic" @@ -4854,7 +4889,7 @@ spec: - type: "string" pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" x-kubernetes-int-or-string: true - description: "resourceUsage keeps track of the total resources all the pods in the podset need to run.\n\n\nBeside what is provided in podSet's specs, this calculation takes into account\nthe LimitRange defaults and RuntimeClass overheads at the moment of admission.\nThis field will not change in case of quota reclaim." + description: "resourceUsage keeps track of the total resources all the pods in the podset need to run.\n\nBeside what is provided in podSet's specs, this calculation takes into account\nthe LimitRange defaults and RuntimeClass overheads at the moment of admission.\nThis field will not change in case of quota reclaim." type: "object" required: - "name" @@ -4963,9 +4998,9 @@ spec: - "name" x-kubernetes-list-type: "map" conditions: - description: "conditions hold the latest available observations of the Workload\ncurrent state.\n\n\nThe type of the condition could be:\n\n\n- Admitted: the Workload was admitted through a ClusterQueue.\n- Finished: the associated workload finished running (failed or succeeded).\n- PodsReady: at least `.spec.podSets[*].count` Pods are ready or have\nsucceeded." + description: "conditions hold the latest available observations of the Workload\ncurrent state.\n\nThe type of the condition could be:\n\n- Admitted: the Workload was admitted through a ClusterQueue.\n- Finished: the associated workload finished running (failed or succeeded).\n- PodsReady: at least `.spec.podSets[*].count` Pods are ready or have\nsucceeded." items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -4994,7 +5029,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/plans.yaml b/crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/plans.yaml index ad72d9238..46902d321 100644 --- a/crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/plans.yaml +++ b/crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/plans.yaml @@ -113,7 +113,7 @@ spec: description: "Preserve the CPU model and flags the VM runs with in its oVirt cluster." type: "boolean" preserveStaticIPs: - description: "Preserve static IPs of VMs in vSphere (Windows only)" + description: "Preserve static IPs of VMs in vSphere" type: "boolean" provider: description: "Providers." diff --git a/crd-catalog/kyverno/kyverno/kyverno.io/v1/clusterpolicies.yaml b/crd-catalog/kyverno/kyverno/kyverno.io/v1/clusterpolicies.yaml index c98eb1f3d..7708cc98c 100644 --- a/crd-catalog/kyverno/kyverno/kyverno.io/v1/clusterpolicies.yaml +++ b/crd-catalog/kyverno/kyverno/kyverno.io/v1/clusterpolicies.yaml @@ -159,7 +159,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -177,6 +177,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -874,7 +889,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -892,6 +907,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -1615,7 +1645,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -1633,6 +1663,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -1873,7 +1918,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -1891,6 +1936,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -2253,7 +2313,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -2271,6 +2331,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -3298,6 +3373,7 @@ spec: type: "object" type: "array" required: + - "match" - "name" type: "object" type: "array" @@ -3465,7 +3541,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -3483,6 +3559,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -4180,7 +4271,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -4198,6 +4289,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -4921,7 +5027,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -4939,6 +5045,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -5179,7 +5300,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -5197,6 +5318,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -5559,7 +5695,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -5577,6 +5713,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -6604,6 +6755,7 @@ spec: type: "object" type: "array" required: + - "match" - "name" type: "object" type: "array" diff --git a/crd-catalog/kyverno/kyverno/kyverno.io/v1/policies.yaml b/crd-catalog/kyverno/kyverno/kyverno.io/v1/policies.yaml index 25f5936bf..52257999e 100644 --- a/crd-catalog/kyverno/kyverno/kyverno.io/v1/policies.yaml +++ b/crd-catalog/kyverno/kyverno/kyverno.io/v1/policies.yaml @@ -159,7 +159,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -177,6 +177,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -874,7 +889,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -892,6 +907,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -1615,7 +1645,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -1633,6 +1663,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -1873,7 +1918,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -1891,6 +1936,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -2253,7 +2313,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -2271,6 +2331,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -3298,6 +3373,7 @@ spec: type: "object" type: "array" required: + - "match" - "name" type: "object" type: "array" @@ -3465,7 +3541,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -3483,6 +3559,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -4180,7 +4271,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -4198,6 +4289,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -4921,7 +5027,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -4939,6 +5045,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -5179,7 +5300,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -5197,6 +5318,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -5559,7 +5695,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -5577,6 +5713,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -6604,6 +6755,7 @@ spec: type: "object" type: "array" required: + - "match" - "name" type: "object" type: "array" diff --git a/crd-catalog/kyverno/kyverno/kyverno.io/v2/cleanuppolicies.yaml b/crd-catalog/kyverno/kyverno/kyverno.io/v2/cleanuppolicies.yaml index 9324258b7..9d44a59cc 100644 --- a/crd-catalog/kyverno/kyverno/kyverno.io/v2/cleanuppolicies.yaml +++ b/crd-catalog/kyverno/kyverno/kyverno.io/v2/cleanuppolicies.yaml @@ -146,7 +146,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -164,6 +164,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -866,6 +881,7 @@ spec: description: "The schedule in Cron format" type: "string" required: + - "match" - "schedule" type: "object" status: diff --git a/crd-catalog/kyverno/kyverno/kyverno.io/v2/clustercleanuppolicies.yaml b/crd-catalog/kyverno/kyverno/kyverno.io/v2/clustercleanuppolicies.yaml index d72f04d91..954e91338 100644 --- a/crd-catalog/kyverno/kyverno/kyverno.io/v2/clustercleanuppolicies.yaml +++ b/crd-catalog/kyverno/kyverno/kyverno.io/v2/clustercleanuppolicies.yaml @@ -146,7 +146,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -164,6 +164,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -866,6 +881,7 @@ spec: description: "The schedule in Cron format" type: "string" required: + - "match" - "schedule" type: "object" status: diff --git a/crd-catalog/kyverno/kyverno/kyverno.io/v2alpha1/globalcontextentries.yaml b/crd-catalog/kyverno/kyverno/kyverno.io/v2alpha1/globalcontextentries.yaml index c22ad7fe7..b6ce4e136 100644 --- a/crd-catalog/kyverno/kyverno/kyverno.io/v2alpha1/globalcontextentries.yaml +++ b/crd-catalog/kyverno/kyverno/kyverno.io/v2alpha1/globalcontextentries.yaml @@ -93,6 +93,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" diff --git a/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/cleanuppolicies.yaml b/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/cleanuppolicies.yaml index 50243f605..2c201aa0f 100644 --- a/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/cleanuppolicies.yaml +++ b/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/cleanuppolicies.yaml @@ -147,7 +147,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -165,6 +165,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -867,6 +882,7 @@ spec: description: "The schedule in Cron format" type: "string" required: + - "match" - "schedule" type: "object" status: diff --git a/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/clustercleanuppolicies.yaml b/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/clustercleanuppolicies.yaml index 873fa3221..b608753d8 100644 --- a/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/clustercleanuppolicies.yaml +++ b/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/clustercleanuppolicies.yaml @@ -147,7 +147,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -165,6 +165,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -867,6 +882,7 @@ spec: description: "The schedule in Cron format" type: "string" required: + - "match" - "schedule" type: "object" status: diff --git a/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/clusterpolicies.yaml b/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/clusterpolicies.yaml index 8b757bbe3..e6603495d 100644 --- a/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/clusterpolicies.yaml +++ b/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/clusterpolicies.yaml @@ -155,7 +155,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -173,6 +173,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -729,7 +744,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -747,6 +762,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -1329,7 +1359,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -1347,6 +1377,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -1587,7 +1632,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -1605,6 +1650,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -2092,7 +2152,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -2110,6 +2170,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -3109,6 +3184,7 @@ spec: type: "object" type: "array" required: + - "match" - "name" type: "object" type: "array" @@ -3276,7 +3352,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -3294,6 +3370,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -3991,7 +4082,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -4009,6 +4100,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -4732,7 +4838,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -4750,6 +4856,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -4990,7 +5111,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -5008,6 +5129,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -5370,7 +5506,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -5388,6 +5524,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -6415,6 +6566,7 @@ spec: type: "object" type: "array" required: + - "match" - "name" type: "object" type: "array" diff --git a/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/policies.yaml b/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/policies.yaml index aca3e02cd..315c8d92a 100644 --- a/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/policies.yaml +++ b/crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/policies.yaml @@ -155,7 +155,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -173,6 +173,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -729,7 +744,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -747,6 +762,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -1329,7 +1359,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -1347,6 +1377,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -1587,7 +1632,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -1605,6 +1650,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -2092,7 +2152,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -2110,6 +2170,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -3109,6 +3184,7 @@ spec: type: "object" type: "array" required: + - "match" - "name" type: "object" type: "array" @@ -3276,7 +3352,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -3294,6 +3370,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -3991,7 +4082,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -4009,6 +4100,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -4732,7 +4838,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -4750,6 +4856,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -4990,7 +5111,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -5008,6 +5129,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -5370,7 +5506,7 @@ spec: type: "object" type: "array" default: - description: "Default is an optional arbitrary JSON object that the context may take if the apiCall\nreturns error" + description: "Default is an optional arbitrary JSON object that the context\nvalue is set to, if the apiCall returns error." x-kubernetes-preserve-unknown-fields: true jmesPath: description: "JMESPath is an optional JSON Match Expression that can be used to\ntransform the JSON response returned from the server. For example\na JMESPath of \"items | length(@)\" applied to the API server response\nfor the URLPath \"/apis/apps/v1/deployments\" will return the total count\nof deployments across all namespaces." @@ -5388,6 +5524,21 @@ spec: caBundle: description: "CABundle is a PEM encoded CA bundle which will be used to validate\nthe server certificate." type: "string" + headers: + description: "Headers is a list of optional HTTP headers to be included in the request." + items: + properties: + key: + description: "Key is the header key" + type: "string" + value: + description: "Value is the header value" + type: "string" + required: + - "key" + - "value" + type: "object" + type: "array" url: description: "URL is the JSON web service URL. A typical form is\n`https://{service}.{namespace}:{port}/{path}`." type: "string" @@ -6415,6 +6566,7 @@ spec: type: "object" type: "array" required: + - "match" - "name" type: "object" type: "array" diff --git a/crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backupbackingimages.yaml b/crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backupbackingimages.yaml index b2e555af6..91e68f5ed 100644 --- a/crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backupbackingimages.yaml +++ b/crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backupbackingimages.yaml @@ -117,6 +117,12 @@ spec: progress: description: "The backing image backup progress." type: "integer" + secret: + description: "Record the secret if this backup backing image is encrypted" + type: "string" + secretNamespace: + description: "Record the secret namespace if this backup backing image is encrypted" + type: "string" size: description: "The backing image size." format: "int64" diff --git a/crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/mariadbs.yaml b/crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/mariadbs.yaml index 95d370114..e282d696c 100644 --- a/crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/mariadbs.yaml +++ b/crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/mariadbs.yaml @@ -4448,6 +4448,9 @@ spec: description: "Labels to be added to children resources." type: "object" type: "object" + podAffinity: + description: "PodAffinity indicates whether the recovery Jobs should run in the same Node as the MariaDB Pods. It defaults to true." + type: "boolean" resources: description: "Resouces describes the compute resource requirements." properties: diff --git a/crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1beta1/flowcollectors.yaml b/crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1beta1/flowcollectors.yaml index 20a2bc074..aefbf2549 100644 --- a/crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1beta1/flowcollectors.yaml +++ b/crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1beta1/flowcollectors.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.14.0" + controller-gen.kubebuilder.io/version: "v0.16.2" name: "flowcollectors.flows.netobserv.io" spec: group: "flows.netobserv.io" @@ -103,7 +103,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "DestPorts defines the destination ports to filter flows by.\nTo filter a single port, set a single port as an integer value. For example destPorts: 80.\nTo filter a range of ports, use a \"start-end\" range, string format. For example destPorts: \"80-100\"." + description: "DestPorts defines the destination ports to filter flows by.\nTo filter a single port, set a single port as an integer value. For example, destPorts: 80.\nTo filter a range of ports, use a \"start-end\" range in string format. For example, destPorts: \"80-100\".\nTo filter two ports, use a \"port1,port2\" in string format. For example, `ports: \"80,100\"`." x-kubernetes-int-or-string: true direction: description: "Direction defines the direction to filter flows by." @@ -127,7 +127,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "Ports defines the ports to filter flows by. it can be user for either source or destination ports.\nTo filter a single port, set a single port as an integer value. For example ports: 80.\nTo filter a range of ports, use a \"start-end\" range, string format. For example ports: \"80-10" + description: "Ports defines the ports to filter flows by. it can be user for either source or destination ports.\nTo filter a single port, set a single port as an integer value. For example, ports: 80.\nTo filter a range of ports, use a \"start-end\" range in string format. For example, ports: \"80-100\".\nTo filter two ports, use a \"port1,port2\" in string format. For example, `ports: \"80,100\"`." x-kubernetes-int-or-string: true protocol: description: "Protocol defines the protocol to filter flows by." @@ -142,7 +142,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "SourcePorts defines the source ports to filter flows by.\nTo filter a single port, set a single port as an integer value. For example sourcePorts: 80.\nTo filter a range of ports, use a \"start-end\" range, string format. For example sourcePorts: \"80-100\"." + description: "SourcePorts defines the source ports to filter flows by.\nTo filter a single port, set a single port as an integer value. For example, sourcePorts: 80.\nTo filter a range of ports, use a \"start-end\" range in string format. For example, sourcePorts: \"80-100\".\nTo filter two ports, use a \"port1,port2\" in string format. For example, `ports: \"80,100\"`." x-kubernetes-int-or-string: true tcpFlags: description: "`tcpFlags` defines the TCP flags to filter flows by." @@ -269,6 +269,8 @@ spec: - "PROVIDED" - "AUTO" type: "string" + required: + - "type" type: "object" type: "object" type: "object" @@ -285,13 +287,16 @@ spec: description: "`resources` are the compute resources required by this container.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" + request: + description: "Request is the name chosen for a request in the referenced claim.\nIf empty, everything from the claim is made available, otherwise\nonly the result of this request." + type: "string" required: - "name" type: "object" @@ -777,13 +782,16 @@ spec: description: "`resources`, in terms of compute resources, required by this container.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" + request: + description: "Request is the name chosen for a request in the referenced claim.\nIf empty, everything from the claim is made available, otherwise\nonly the result of this request." + type: "string" required: - "name" type: "object" @@ -1795,6 +1803,8 @@ spec: - "PROVIDED" - "AUTO" type: "string" + required: + - "type" type: "object" type: "object" type: "object" @@ -1825,13 +1835,16 @@ spec: description: "`resources` are the compute resources required by this container.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" + request: + description: "Request is the name chosen for a request in the referenced claim.\nIf empty, everything from the claim is made available, otherwise\nonly the result of this request." + type: "string" required: - "name" type: "object" @@ -1874,6 +1887,9 @@ spec: name: description: "Label name, used to flag matching flows." type: "string" + required: + - "cidrs" + - "name" type: "object" type: "array" openShiftAutoDetect: @@ -1971,6 +1987,8 @@ spec: default: "30s" description: "`timeout` is the read timeout for console plugin queries to Prometheus.\nA timeout of zero means no timeout." type: "string" + required: + - "mode" type: "object" type: "object" type: "object" @@ -1980,7 +1998,7 @@ spec: conditions: description: "`conditions` represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -2009,7 +2027,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1beta2/flowcollectors.yaml b/crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1beta2/flowcollectors.yaml index 7a03ae2f9..673a203ec 100644 --- a/crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1beta2/flowcollectors.yaml +++ b/crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1beta2/flowcollectors.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.14.0" + controller-gen.kubebuilder.io/version: "v0.16.2" name: "flowcollectors.flows.netobserv.io" spec: group: "flows.netobserv.io" @@ -239,13 +239,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -344,13 +344,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -448,13 +448,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -553,13 +553,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -692,7 +692,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "`destPorts` defines the destination ports to filter flows by.\nTo filter a single port, set a single port as an integer value. For example: `destPorts: 80`.\nTo filter a range of ports, use a \"start-end\" range in string format. For example: `destPorts: \"80-100\"`." + description: "`destPorts` defines the destination ports to filter flows by.\nTo filter a single port, set a single port as an integer value. For example, `destPorts: 80`.\nTo filter a range of ports, use a \"start-end\" range in string format. For example, `destPorts: \"80-100\"`.\nTo filter two ports, use a \"port1,port2\" in string format. For example, `ports: \"80,100\"`." x-kubernetes-int-or-string: true direction: description: "`direction` defines the direction to filter flows by." @@ -716,7 +716,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "`ports` defines the ports to filter flows by. It is used both for source and destination ports.\nTo filter a single port, set a single port as an integer value. For example: `ports: 80`.\nTo filter a range of ports, use a \"start-end\" range in string format. For example: `ports: \"80-100\"`." + description: "`ports` defines the ports to filter flows by. It is used both for source and destination ports.\nTo filter a single port, set a single port as an integer value. For example, `ports: 80`.\nTo filter a range of ports, use a \"start-end\" range in string format. For example, `ports: \"80-100\"`.\nTo filter two ports, use a \"port1,port2\" in string format. For example, `ports: \"80,100\"`." x-kubernetes-int-or-string: true protocol: description: "`protocol` defines the protocol to filter flows by." @@ -731,7 +731,7 @@ spec: anyOf: - type: "integer" - type: "string" - description: "`sourcePorts` defines the source ports to filter flows by.\nTo filter a single port, set a single port as an integer value. For example: `sourcePorts: 80`.\nTo filter a range of ports, use a \"start-end\" range in string format. For example: `sourcePorts: \"80-100\"`." + description: "`sourcePorts` defines the source ports to filter flows by.\nTo filter a single port, set a single port as an integer value. For example, `sourcePorts: 80`.\nTo filter a range of ports, use a \"start-end\" range in string format. For example, `sourcePorts: \"80-100\"`.\nTo filter two ports, use a \"port1,port2\" in string format. For example, `ports: \"80,100\"`." x-kubernetes-int-or-string: true tcpFlags: description: "`tcpFlags` defines the TCP flags to filter flows by." @@ -858,6 +858,8 @@ spec: - "Provided" - "Auto" type: "string" + required: + - "type" type: "object" type: "object" type: "object" @@ -874,13 +876,16 @@ spec: description: "`resources` are the compute resources required by this container.\nFor more information, see https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" + request: + description: "Request is the name chosen for a request in the referenced claim.\nIf empty, everything from the claim is made available, otherwise\nonly the result of this request." + type: "string" required: - "name" type: "object" @@ -1181,13 +1186,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -1286,13 +1291,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -1390,13 +1395,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -1495,13 +1500,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -1970,13 +1975,16 @@ spec: description: "`resources`, in terms of compute resources, required by this container.\nFor more information, see https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" + request: + description: "Request is the name chosen for a request in the referenced claim.\nIf empty, everything from the claim is made available, otherwise\nonly the result of this request." + type: "string" required: - "name" type: "object" @@ -2454,6 +2462,8 @@ spec: namespace: description: "Namespace where this `LokiStack` resource is located. If omitted, it is assumed to be the same as `spec.namespace`." type: "string" + required: + - "name" type: "object" manual: description: "Loki configuration for `Manual` mode. This is the most flexible configuration.\nIt is ignored for other modes." @@ -2756,7 +2766,7 @@ spec: description: "`readTimeout` is the maximum console plugin loki query total time limit.\nA timeout of zero means no timeout." type: "string" writeBatchSize: - default: 102400 + default: 10485760 description: "`writeBatchSize` is the maximum batch size (in bytes) of Loki logs to accumulate before sending." format: "int64" minimum: 1.0 @@ -2769,6 +2779,8 @@ spec: default: "10s" description: "`writeTimeout` is the maximum Loki time connection / request limit.\nA timeout of zero means no timeout." type: "string" + required: + - "mode" type: "object" namespace: default: "netobserv" @@ -3027,13 +3039,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -3132,13 +3144,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -3236,13 +3248,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -3341,13 +3353,13 @@ spec: type: "object" x-kubernetes-map-type: "atomic" matchLabelKeys: - description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" x-kubernetes-list-type: "atomic" mismatchLabelKeys: - description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate." + description: "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default)." items: type: "string" type: "array" @@ -3884,6 +3896,8 @@ spec: - "Provided" - "Auto" type: "string" + required: + - "type" type: "object" type: "object" type: "object" @@ -3901,13 +3915,16 @@ spec: description: "`resources` are the compute resources required by this container.\nFor more information, see https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" properties: claims: - description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\n\nThis field is immutable. It can only be set for containers." + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable. It can only be set for containers." items: description: "ResourceClaim references one entry in PodSpec.ResourceClaims." properties: name: description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." type: "string" + request: + description: "Request is the name chosen for a request in the referenced claim.\nIf empty, everything from the claim is made available, otherwise\nonly the result of this request." + type: "string" required: - "name" type: "object" @@ -3950,6 +3967,9 @@ spec: name: description: "Label name, used to flag matching flows." type: "string" + required: + - "cidrs" + - "name" type: "object" type: "array" openShiftAutoDetect: @@ -4046,6 +4066,8 @@ spec: default: "30s" description: "`timeout` is the read timeout for console plugin queries to Prometheus.\nA timeout of zero means no timeout." type: "string" + required: + - "mode" type: "object" type: "object" type: "object" @@ -4055,7 +4077,7 @@ spec: conditions: description: "`conditions` represent the latest available observations of an object's state" items: - description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}" + description: "Condition contains details for one aspect of the current state of this API Resource." properties: lastTransitionTime: description: "lastTransitionTime is the last time the condition transitioned from one status to another.\nThis should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable." @@ -4084,7 +4106,7 @@ spec: - "Unknown" type: "string" type: - description: "type of condition in CamelCase or in foo.example.com/CamelCase.\n---\nMany .condition.type values are consistent across resources like Available, but because arbitrary conditions can be\nuseful (see .node.status.conditions), the ability to deconflict is important.\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)" + description: "type of condition in CamelCase or in foo.example.com/CamelCase." maxLength: 316 pattern: "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$" type: "string" diff --git a/crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/clientsettingspolicies.yaml b/crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/clientsettingspolicies.yaml index a3c539a06..f5333ba68 100644 --- a/crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/clientsettingspolicies.yaml +++ b/crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/clientsettingspolicies.yaml @@ -48,7 +48,7 @@ spec: type: "string" timeout: description: "Timeout defines a timeout for reading client request body. The timeout is set only for a period between\ntwo successive read operations, not for the transmission of the whole request body.\nIf a client does not transmit anything within this time, the request is terminated with the\n408 (Request Time-out) error.\nDefault: https://nginx.org/en/docs/http/ngx_http_core_module.html#client_body_timeout." - pattern: "^\\d{1,4}(ms|s)?$" + pattern: "^[0-9]{1,4}(ms|s|m|h)?$" type: "string" type: "object" keepAlive: @@ -61,18 +61,18 @@ spec: type: "integer" time: description: "Time defines the maximum time during which requests can be processed through one keep-alive connection.\nAfter this time is reached, the connection is closed following the subsequent request processing.\nDefault: https://nginx.org/en/docs/http/ngx_http_core_module.html#keepalive_time." - pattern: "^\\d{1,4}(ms|s)?$" + pattern: "^[0-9]{1,4}(ms|s|m|h)?$" type: "string" timeout: description: "Timeout defines the keep-alive timeouts for clients." properties: header: description: "Header sets the timeout in the \"Keep-Alive: timeout=time\" response header field." - pattern: "^\\d{1,4}(ms|s)?$" + pattern: "^[0-9]{1,4}(ms|s|m|h)?$" type: "string" server: description: "Server sets the timeout during which a keep-alive client connection will stay open on the server side.\nSetting this value to 0 disables keep-alive client connections." - pattern: "^\\d{1,4}(ms|s)?$" + pattern: "^[0-9]{1,4}(ms|s|m|h)?$" type: "string" type: "object" x-kubernetes-validations: diff --git a/crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/nginxproxies.yaml b/crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/nginxproxies.yaml index 031a3da7c..77ab20020 100644 --- a/crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/nginxproxies.yaml +++ b/crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/nginxproxies.yaml @@ -46,6 +46,42 @@ spec: - "ipv4" - "ipv6" type: "string" + rewriteClientIP: + description: "RewriteClientIP defines configuration for rewriting the client IP to the original client's IP." + properties: + mode: + description: "Mode defines how NGINX will rewrite the client's IP address.\nThere are two possible modes:\n- ProxyProtocol: NGINX will rewrite the client's IP using the PROXY protocol header.\n- XForwardedFor: NGINX will rewrite the client's IP using the X-Forwarded-For header.\nSets NGINX directive real_ip_header: https://nginx.org/en/docs/http/ngx_http_realip_module.html#real_ip_header" + enum: + - "ProxyProtocol" + - "XForwardedFor" + type: "string" + setIPRecursively: + description: "SetIPRecursively configures whether recursive search is used when selecting the client's address from\nthe X-Forwarded-For header. It is used in conjunction with TrustedAddresses.\nIf enabled, NGINX will recurse on the values in X-Forwarded-Header from the end of array\nto start of array and select the first untrusted IP.\nFor example, if X-Forwarded-For is [11.11.11.11, 22.22.22.22, 55.55.55.1],\nand TrustedAddresses is set to 55.55.55.1/32, NGINX will rewrite the client IP to 22.22.22.22.\nIf disabled, NGINX will select the IP at the end of the array.\nIn the previous example, 55.55.55.1 would be selected.\nSets NGINX directive real_ip_recursive: https://nginx.org/en/docs/http/ngx_http_realip_module.html#real_ip_recursive" + type: "boolean" + trustedAddresses: + description: "TrustedAddresses specifies the addresses that are trusted to send correct client IP information.\nIf a request comes from a trusted address, NGINX will rewrite the client IP information,\nand forward it to the backend in the X-Forwarded-For* and X-Real-IP headers.\nIf the request does not come from a trusted address, NGINX will not rewrite the client IP information.\nTrustedAddresses only supports CIDR blocks: 192.33.21.1/24, fe80::1/64.\nTo trust all addresses (not recommended for production), set to 0.0.0.0/0.\nIf no addresses are provided, NGINX will not rewrite the client IP information.\nSets NGINX directive set_real_ip_from: https://nginx.org/en/docs/http/ngx_http_realip_module.html#set_real_ip_from\nThis field is required if mode is set." + items: + description: "Address is a struct that specifies address type and value." + properties: + type: + default: "cidr" + description: "Type specifies the type of address.\nDefault is \"cidr\" which specifies that the address is a CIDR block." + enum: + - "cidr" + type: "string" + value: + description: "Value specifies the address value." + type: "string" + type: "object" + maxItems: 16 + type: "array" + x-kubernetes-list-map-keys: + - "type" + x-kubernetes-list-type: "map" + type: "object" + x-kubernetes-validations: + - message: "if mode is set, trustedAddresses is a required field" + rule: "!(has(self.mode) && (!has(self.trustedAddresses) || size(self.trustedAddresses) == 0))" telemetry: description: "Telemetry specifies the OpenTelemetry configuration." properties: @@ -68,7 +104,7 @@ spec: type: "string" interval: description: "Interval is the maximum interval between two exports.\nDefault: https://nginx.org/en/docs/ngx_otel_module.html#otel_exporter" - pattern: "^\\d{1,4}(ms|s)?$" + pattern: "^[0-9]{1,4}(ms|s|m|h)?$" type: "string" required: - "endpoint" diff --git a/crd-catalog/openshift/hive/hive.openshift.io/v1/machinepools.yaml b/crd-catalog/openshift/hive/hive.openshift.io/v1/machinepools.yaml index 71449a54c..def0f823c 100644 --- a/crd-catalog/openshift/hive/hive.openshift.io/v1/machinepools.yaml +++ b/crd-catalog/openshift/hive/hive.openshift.io/v1/machinepools.yaml @@ -212,6 +212,12 @@ spec: virtualNetwork: description: "VirtualNetwork specifies the name of an existing VNet for the Machines to use If omitted, the default (${infraID}-vnet) will be used." type: "string" + vmNetworkingType: + description: "VMNetworkingType specifies whether to enable accelerated networking. Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, greatly improving its networking performance. eg. values: \"Accelerated\", \"Basic\"" + enum: + - "Accelerated" + - "Basic" + type: "string" zones: description: "Zones is list of availability zones that can be used. eg. [\"1\", \"2\", \"3\"]" items: diff --git a/crd-catalog/percona/everest-operator/everest.percona.com/v1alpha1/databaseclusters.yaml b/crd-catalog/percona/everest-operator/everest.percona.com/v1alpha1/databaseclusters.yaml index b321e5726..9522fcefb 100644 --- a/crd-catalog/percona/everest-operator/everest.percona.com/v1alpha1/databaseclusters.yaml +++ b/crd-catalog/percona/everest-operator/everest.percona.com/v1alpha1/databaseclusters.yaml @@ -353,6 +353,10 @@ spec: message: description: "Message is extra information about the cluster" type: "string" + observedGeneration: + description: "ObservedGeneration is the most recent generation observed for this DatabaseCluster." + format: "int64" + type: "integer" port: description: "Port is the port where the cluster can be reached" format: "int32" diff --git a/crd-catalog/percona/percona-postgresql-operator/pgv2.percona.com/v2/perconapgclusters.yaml b/crd-catalog/percona/percona-postgresql-operator/pgv2.percona.com/v2/perconapgclusters.yaml index 55e910672..7a690dbf6 100644 --- a/crd-catalog/percona/percona-postgresql-operator/pgv2.percona.com/v2/perconapgclusters.yaml +++ b/crd-catalog/percona/percona-postgresql-operator/pgv2.percona.com/v2/perconapgclusters.yaml @@ -8106,6 +8106,12 @@ spec: - "Never" - "IfNotPresent" type: "string" + querySource: + default: "pgstatmonitor" + enum: + - "pgstatmonitor" + - "pgstatstatements" + type: "string" resources: description: "Compute resources of a PMM container." properties: @@ -8155,6 +8161,7 @@ spec: required: - "enabled" - "image" + - "querySource" - "secret" - "serverHost" type: "object" @@ -10258,6 +10265,39 @@ spec: type: "boolean" type: "object" x-kubernetes-map-type: "atomic" + customRootCATLSSecret: + description: "The secret containing the root CA certificate and key for\nsecure connections to the PostgreSQL server. It will need to contain the\nCA TLS certificate and CA TLS key with the data keys set to\nroot.crt and root.key, respectively." + properties: + items: + description: "items if unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'." + items: + description: "Maps a string key to a path within a volume." + properties: + key: + description: "key is the key to project." + type: "string" + mode: + description: "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set." + format: "int32" + type: "integer" + path: + description: "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." + type: "string" + required: + - "key" + - "path" + type: "object" + type: "array" + x-kubernetes-list-type: "atomic" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "optional field specify whether the Secret or its key must be defined" + type: "boolean" + type: "object" + x-kubernetes-map-type: "atomic" customTLSSecret: description: "The secret containing the Certificates and Keys to encrypt PostgreSQL\ntraffic will need to contain the server TLS certificate, TLS key and the\nCertificate Authority certificate with the data keys set to tls.crt,\ntls.key and ca.crt, respectively. It will then be mounted as a volume\nprojection to the '/pgconf/tls' directory. For more information on\nKubernetes secret projections, please see\nhttps://k8s.io/docs/concepts/configuration/secret/#projection-of-secret-keys-to-specific-paths\nNOTE: If CustomTLSSecret is provided, CustomReplicationClientTLSSecret\nMUST be provided and the ca.crt provided must be the same." properties: diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/alertmanagers.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/alertmanagers.yaml index 126a8ef0f..6435c0bac 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/alertmanagers.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/alertmanagers.yaml @@ -787,6 +787,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -851,7 +854,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -873,11 +876,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -1016,8 +1019,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/podmonitors.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/podmonitors.yaml index 640be3ad6..f5ff80762 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/podmonitors.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/podmonitors.yaml @@ -299,7 +299,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -321,11 +321,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/probes.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/probes.yaml index 6361cfe62..8b23f64ae 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/probes.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/probes.yaml @@ -259,7 +259,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -281,11 +281,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/prometheuses.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/prometheuses.yaml index cf092dafa..9331dd6c7 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/prometheuses.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/prometheuses.yaml @@ -3623,7 +3623,7 @@ spec: description: "The name of the remote read queue, it must be unique if specified. The\nname is used in metrics and logging in order to differentiate read\nconfigurations.\n\nIt requires Prometheus >= v2.15.0." type: "string" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "OAuth2 configuration for the URL.\n\nIt requires Prometheus >= v2.27.0.\n\nCannot be set at the same time as `authorization`, or `basicAuth`." @@ -3689,7 +3689,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -3711,11 +3711,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -3874,11 +3874,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -4195,7 +4195,7 @@ spec: description: "The name of the remote write queue, it must be unique if specified. The\nname is used in metrics and logging in order to differentiate queues.\n\nIt requires Prometheus >= v2.15.0." type: "string" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "OAuth2 configuration for the URL.\n\nIt requires Prometheus >= v2.27.0.\n\nCannot be set at the same time as `sigv4`, `authorization`, `basicAuth`, or `azureAd`." @@ -4261,7 +4261,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -4283,11 +4283,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -4446,11 +4446,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/servicemonitors.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/servicemonitors.yaml index 23ff5b96c..fdf06fceb 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/servicemonitors.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/servicemonitors.yaml @@ -271,7 +271,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -293,11 +293,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/thanosrulers.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/thanosrulers.yaml index d20f7d60f..4d218da35 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/thanosrulers.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/thanosrulers.yaml @@ -4740,7 +4740,7 @@ spec: format: "int32" type: "integer" conditions: - description: "The current state of the Alertmanager object." + description: "The current state of the ThanosRuler object." items: description: "Condition represents the state of the resources associated with the\nPrometheus, Alertmanager or ThanosRuler resource." properties: diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/alertmanagerconfigs.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/alertmanagerconfigs.yaml index 286ff028a..fcad9086a 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/alertmanagerconfigs.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/alertmanagerconfigs.yaml @@ -283,6 +283,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -347,7 +350,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -369,11 +372,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -512,8 +515,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -945,6 +975,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -1009,7 +1042,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -1031,11 +1064,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -1174,8 +1207,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -1470,6 +1530,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -1534,7 +1597,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -1556,11 +1619,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -1699,8 +1762,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -1992,6 +2082,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -2056,7 +2149,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -2078,11 +2171,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -2221,8 +2314,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -2521,6 +2641,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -2585,7 +2708,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -2607,11 +2730,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -2750,8 +2873,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -3119,6 +3269,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -3183,7 +3336,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -3205,11 +3358,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -3348,8 +3501,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -3600,6 +3780,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -3664,7 +3847,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -3686,11 +3869,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -3829,8 +4012,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -4139,6 +4349,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -4203,7 +4416,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -4225,11 +4438,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -4368,8 +4581,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -4638,6 +4878,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -4702,7 +4945,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -4724,11 +4967,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -4867,8 +5110,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -5101,6 +5371,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -5165,7 +5438,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -5187,11 +5460,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -5330,8 +5603,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -5557,6 +5857,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -5621,7 +5924,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -5643,11 +5946,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -5786,8 +6089,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -6054,6 +6384,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -6118,7 +6451,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -6140,11 +6473,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -6283,8 +6616,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/prometheusagents.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/prometheusagents.yaml index 9d44762bf..27f05d877 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/prometheusagents.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/prometheusagents.yaml @@ -3204,7 +3204,7 @@ spec: description: "The name of the remote write queue, it must be unique if specified. The\nname is used in metrics and logging in order to differentiate queues.\n\nIt requires Prometheus >= v2.15.0." type: "string" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "OAuth2 configuration for the URL.\n\nIt requires Prometheus >= v2.27.0.\n\nCannot be set at the same time as `sigv4`, `authorization`, `basicAuth`, or `azureAd`." @@ -3270,7 +3270,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -3292,11 +3292,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -3455,11 +3455,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/scrapeconfigs.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/scrapeconfigs.yaml index fa203bb49..9c0488a43 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/scrapeconfigs.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/scrapeconfigs.yaml @@ -234,7 +234,7 @@ spec: description: "Namespaces are only supported in Consul Enterprise." type: "string" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" nodeMeta: additionalProperties: @@ -306,7 +306,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -328,11 +328,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -494,11 +494,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -709,7 +709,7 @@ spec: description: "Configure whether HTTP requests follow HTTP 3xx redirects." type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth 2.0 configuration.\nCannot be set at the same time as `authorization`." @@ -775,7 +775,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -797,11 +797,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -963,11 +963,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -1106,6 +1106,7 @@ spec: names: description: "A list of DNS domain names to be queried." items: + minLength: 1 type: "string" minItems: 1 type: "array" @@ -1213,9 +1214,11 @@ spec: values: description: "Value to filter on." items: + minLength: 1 type: "string" minItems: 1 type: "array" + x-kubernetes-list-type: "set" required: - "name" - "values" @@ -1238,7 +1241,7 @@ spec: description: "Configure whether to match the first network if the container has multiple networks defined.\nIf unset, Prometheus uses true by default.\nIt requires Prometheus >= v2.54.1." type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth 2.0 configuration.\nCannot be set at the same time as `authorization`." @@ -1304,7 +1307,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -1326,11 +1329,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -1492,11 +1495,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -1710,9 +1713,11 @@ spec: values: description: "Value to filter on." items: + minLength: 1 type: "string" minItems: 1 type: "array" + x-kubernetes-list-type: "set" required: - "name" - "values" @@ -1729,7 +1734,7 @@ spec: pattern: "^[a-zA-Z][a-zA-Z0-9+.-]*://.+$" type: "string" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth 2.0 configuration.\nCannot be set at the same time as `authorization`, or `basicAuth`." @@ -1795,7 +1800,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -1817,11 +1822,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -1986,11 +1991,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -2167,9 +2172,11 @@ spec: values: description: "Value to filter on." items: + minLength: 1 type: "string" minItems: 1 type: "array" + x-kubernetes-list-type: "set" required: - "name" - "values" @@ -2182,7 +2189,7 @@ spec: description: "Configure whether HTTP requests follow HTTP 3xx redirects.\nIt requires Prometheus >= v2.41.0" type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" port: description: "The port to scrape metrics from. If using the public IP address, this must\ninstead be specified in the relabeling rule." @@ -2210,11 +2217,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -2447,7 +2454,7 @@ spec: description: "Configure whether HTTP requests follow HTTP 3xx redirects." type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth 2.0 configuration.\nCannot be set at the same time as `authorization` or `basic_auth`." @@ -2513,7 +2520,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -2535,11 +2542,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -2698,11 +2705,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -2966,7 +2973,7 @@ spec: description: "Configure whether HTTP requests follow HTTP 3xx redirects." type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth 2.0 configuration.\nCannot be used at the same time as `basic_auth` or `authorization`." @@ -3032,7 +3039,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -3054,11 +3061,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -3220,11 +3227,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -3445,7 +3452,7 @@ spec: description: "Configure whether HTTP requests follow HTTP 3xx redirects." type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth 2.0 configuration to authenticate against the target HTTP endpoint.\nCannot be set at the same time as `authorization`, or `basicAuth`." @@ -3511,7 +3518,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -3533,11 +3540,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -3696,11 +3703,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -3878,7 +3885,7 @@ spec: description: "Configure whether the HTTP requests should follow HTTP 3xx redirects." type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" port: description: "Port to scrape the metrics from." @@ -3906,11 +3913,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -4150,7 +4157,7 @@ spec: type: "boolean" type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth 2.0 configuration.\nCannot be set at the same time as `authorization`, or `basicAuth`." @@ -4216,7 +4223,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -4238,11 +4245,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -4401,11 +4408,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -4655,7 +4662,7 @@ spec: description: "Configure whether HTTP requests follow HTTP 3xx redirects." type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth 2.0 configuration.\nCannot be set at the same time as `authorization`, or `basicAuth`." @@ -4721,7 +4728,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -4743,11 +4750,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -4906,11 +4913,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -5154,7 +5161,7 @@ spec: description: "Configure whether the HTTP requests should follow HTTP 3xx redirects." type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth2.0 configuration.\nCannot be set at the same time as `basicAuth`, or `authorization`." @@ -5220,7 +5227,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -5242,11 +5249,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -5411,11 +5418,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -5606,7 +5613,7 @@ spec: description: "Configure whether HTTP requests follow HTTP 3xx redirects." type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth 2.0 configuration.\nCannot be used at the same time as `authorization`." @@ -5672,7 +5679,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -5694,11 +5701,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -5863,11 +5870,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -6069,7 +6076,7 @@ spec: minLength: 1 type: "string" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" nomadSDConfigs: description: "NomadSDConfigs defines a list of Nomad service discovery configurations." @@ -6150,7 +6157,7 @@ spec: namespace: type: "string" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth 2.0 configuration.\nCannot be set at the same time as `authorization` or `basic_auth`." @@ -6216,7 +6223,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -6238,11 +6245,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -6401,11 +6408,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -6609,7 +6616,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -6631,11 +6638,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -7092,11 +7099,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -7179,7 +7186,7 @@ spec: description: "Whether to include the parameters as meta labels.\nNote: Enabling this exposes parameters in the Prometheus UI and API. Make sure\nthat you don't have secrets exposed as parameters if you enable this." type: "boolean" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" oauth2: description: "Optional OAuth2.0 configuration.\nCannot be set at the same time as `basicAuth`, or `authorization`." @@ -7245,7 +7252,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -7267,11 +7274,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -7436,11 +7443,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -7669,7 +7676,7 @@ spec: minLength: 1 type: "string" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" port: description: "The port to scrape metrics from." @@ -7701,11 +7708,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -7741,9 +7748,11 @@ spec: tagsFilter: description: "TagsFilter specify a tag filter (a server needs to have all defined tags to be listed) to apply on the server listing request." items: + minLength: 1 type: "string" minItems: 1 type: "array" + x-kubernetes-list-type: "set" tlsConfig: description: "TLS configuration to use on every scrape request" properties: diff --git a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1beta1/alertmanagerconfigs.yaml b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1beta1/alertmanagerconfigs.yaml index e9625e03c..ed248ad05 100644 --- a/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1beta1/alertmanagerconfigs.yaml +++ b/crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1beta1/alertmanagerconfigs.yaml @@ -203,6 +203,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -267,7 +270,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -289,11 +292,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -432,8 +435,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -859,6 +889,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -923,7 +956,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -945,11 +978,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -1088,8 +1121,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -1380,6 +1440,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -1444,7 +1507,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -1466,11 +1529,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -1609,8 +1672,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -1903,6 +1993,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -1967,7 +2060,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -1989,11 +2082,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -2132,8 +2225,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -2426,6 +2546,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -2490,7 +2613,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -2512,11 +2635,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -2655,8 +2778,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -3016,6 +3166,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -3080,7 +3233,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -3102,11 +3255,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -3245,8 +3398,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -3495,6 +3675,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -3559,7 +3742,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -3581,11 +3764,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -3724,8 +3907,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -4030,6 +4240,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -4094,7 +4307,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -4116,11 +4329,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -4259,8 +4472,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -4525,6 +4765,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -4589,7 +4832,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -4611,11 +4854,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -4754,8 +4997,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -4986,6 +5256,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -5050,7 +5323,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -5072,11 +5345,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -5215,8 +5488,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -5440,6 +5740,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -5504,7 +5807,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -5526,11 +5829,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -5669,8 +5972,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." @@ -5931,6 +6261,9 @@ spec: followRedirects: description: "FollowRedirects specifies whether the client should follow HTTP 3xx redirects." type: "boolean" + noProxy: + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "string" oauth2: description: "OAuth2 client credentials used to fetch a token for the targets." properties: @@ -5995,7 +6328,7 @@ spec: description: "`endpointParams` configures the HTTP parameters to append to the token\nURL." type: "object" noProxy: - description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0." + description: "`noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names\nthat should be excluded from proxying. IP and domain names can\ncontain port numbers.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "string" proxyConnectHeader: additionalProperties: @@ -6017,11 +6350,11 @@ spec: type: "object" x-kubernetes-map-type: "atomic" type: "array" - description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0." + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "object" x-kubernetes-map-type: "atomic" proxyFromEnvironment: - description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\nIf unset, Prometheus uses its default value.\n\nIt requires Prometheus >= v2.43.0." + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." type: "boolean" proxyUrl: description: "`proxyURL` defines the HTTP proxy server to use." @@ -6160,8 +6493,35 @@ spec: - "clientSecret" - "tokenUrl" type: "object" - proxyURL: - description: "Optional proxy URL." + proxyConnectHeader: + additionalProperties: + items: + description: "SecretKeySelector selects a key of a Secret." + properties: + key: + description: "The key of the secret to select from. Must be a valid secret key." + type: "string" + name: + default: "" + description: "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + type: "string" + optional: + description: "Specify whether the Secret or its key must be defined" + type: "boolean" + required: + - "key" + type: "object" + x-kubernetes-map-type: "atomic" + type: "array" + description: "ProxyConnectHeader optionally specifies headers to send to\nproxies during CONNECT requests.\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "object" + x-kubernetes-map-type: "atomic" + proxyFromEnvironment: + description: "Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).\n\nIt requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0." + type: "boolean" + proxyUrl: + description: "`proxyURL` defines the HTTP proxy server to use." + pattern: "^http(s)?://.+$" type: "string" tlsConfig: description: "TLS configuration for the client." diff --git a/crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectstores.yaml b/crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectstores.yaml index 1bf284690..ef338d621 100644 --- a/crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectstores.yaml +++ b/crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectstores.yaml @@ -1673,12 +1673,53 @@ spec: x-kubernetes-validations: - message: "object store shared metadata pool is immutable" rule: "self == oldSelf" + poolPlacements: + description: "PoolPlacements control which Pools are associated with a particular RGW bucket.\nOnce PoolPlacements are defined, RGW client will be able to associate pool\nwith ObjectStore bucket by providing \"\" during s3 bucket creation\nor \"X-Storage-Policy\" header during swift container creation.\nSee: https://docs.ceph.com/en/latest/radosgw/placement/#placement-targets\nPoolPlacement with name: \"default\" will be used as a default pool if no option\nis provided during bucket creation.\nIf default placement is not provided, spec.sharedPools.dataPoolName and spec.sharedPools.MetadataPoolName will be used as default pools.\nIf spec.sharedPools are also empty, then RGW pools (spec.dataPool and spec.metadataPool) will be used as defaults." + items: + properties: + dataNonECPoolName: + description: "The data pool used to store ObjectStore data that cannot use erasure coding (ex: multi-part uploads).\nIf dataPoolName is not erasure coded, then there is no need for dataNonECPoolName." + type: "string" + dataPoolName: + description: "The data pool used to store ObjectStore objects data." + minLength: 1 + type: "string" + metadataPoolName: + description: "The metadata pool used to store ObjectStore bucket index." + minLength: 1 + type: "string" + name: + description: "Pool placement name. Name can be arbitrary. Placement with name \"default\" will be used as default." + minLength: 1 + pattern: "^[a-zA-Z0-9._/-]+$" + type: "string" + storageClasses: + description: "StorageClasses can be selected by user to override dataPoolName during object creation.\nEach placement has default STANDARD StorageClass pointing to dataPoolName.\nThis list allows defining additional StorageClasses on top of default STANDARD storage class." + items: + properties: + dataPoolName: + description: "DataPoolName is the data pool used to store ObjectStore objects data." + minLength: 1 + type: "string" + name: + description: "Name is the StorageClass name. Ceph allows arbitrary name for StorageClasses,\nhowever most clients/libs insist on AWS names so it is recommended to use\none of the valid x-amz-storage-class values for better compatibility:\nREDUCED_REDUNDANCY | STANDARD_IA | ONEZONE_IA | INTELLIGENT_TIERING | GLACIER | DEEP_ARCHIVE | OUTPOSTS | GLACIER_IR | SNOW | EXPRESS_ONEZONE\nSee AWS docs: https://aws.amazon.com/de/s3/storage-classes/" + minLength: 1 + pattern: "^[a-zA-Z0-9._/-]+$" + type: "string" + required: + - "dataPoolName" + - "name" + type: "object" + type: "array" + required: + - "dataPoolName" + - "metadataPoolName" + - "name" + type: "object" + type: "array" preserveRadosNamespaceDataOnDelete: description: "Whether the RADOS namespaces should be preserved on deletion of the object store" type: "boolean" - required: - - "dataPoolName" - - "metadataPoolName" type: "object" zone: description: "The multisite info" diff --git a/crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectzones.yaml b/crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectzones.yaml index 1e269a1a3..bb469d0f1 100644 --- a/crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectzones.yaml +++ b/crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectzones.yaml @@ -400,12 +400,53 @@ spec: x-kubernetes-validations: - message: "object store shared metadata pool is immutable" rule: "self == oldSelf" + poolPlacements: + description: "PoolPlacements control which Pools are associated with a particular RGW bucket.\nOnce PoolPlacements are defined, RGW client will be able to associate pool\nwith ObjectStore bucket by providing \"\" during s3 bucket creation\nor \"X-Storage-Policy\" header during swift container creation.\nSee: https://docs.ceph.com/en/latest/radosgw/placement/#placement-targets\nPoolPlacement with name: \"default\" will be used as a default pool if no option\nis provided during bucket creation.\nIf default placement is not provided, spec.sharedPools.dataPoolName and spec.sharedPools.MetadataPoolName will be used as default pools.\nIf spec.sharedPools are also empty, then RGW pools (spec.dataPool and spec.metadataPool) will be used as defaults." + items: + properties: + dataNonECPoolName: + description: "The data pool used to store ObjectStore data that cannot use erasure coding (ex: multi-part uploads).\nIf dataPoolName is not erasure coded, then there is no need for dataNonECPoolName." + type: "string" + dataPoolName: + description: "The data pool used to store ObjectStore objects data." + minLength: 1 + type: "string" + metadataPoolName: + description: "The metadata pool used to store ObjectStore bucket index." + minLength: 1 + type: "string" + name: + description: "Pool placement name. Name can be arbitrary. Placement with name \"default\" will be used as default." + minLength: 1 + pattern: "^[a-zA-Z0-9._/-]+$" + type: "string" + storageClasses: + description: "StorageClasses can be selected by user to override dataPoolName during object creation.\nEach placement has default STANDARD StorageClass pointing to dataPoolName.\nThis list allows defining additional StorageClasses on top of default STANDARD storage class." + items: + properties: + dataPoolName: + description: "DataPoolName is the data pool used to store ObjectStore objects data." + minLength: 1 + type: "string" + name: + description: "Name is the StorageClass name. Ceph allows arbitrary name for StorageClasses,\nhowever most clients/libs insist on AWS names so it is recommended to use\none of the valid x-amz-storage-class values for better compatibility:\nREDUCED_REDUNDANCY | STANDARD_IA | ONEZONE_IA | INTELLIGENT_TIERING | GLACIER | DEEP_ARCHIVE | OUTPOSTS | GLACIER_IR | SNOW | EXPRESS_ONEZONE\nSee AWS docs: https://aws.amazon.com/de/s3/storage-classes/" + minLength: 1 + pattern: "^[a-zA-Z0-9._/-]+$" + type: "string" + required: + - "dataPoolName" + - "name" + type: "object" + type: "array" + required: + - "dataPoolName" + - "metadataPoolName" + - "name" + type: "object" + type: "array" preserveRadosNamespaceDataOnDelete: description: "Whether the RADOS namespaces should be preserved on deletion of the object store" type: "boolean" - required: - - "dataPoolName" - - "metadataPoolName" type: "object" zoneGroup: description: "The display name for the ceph users" diff --git a/crd-catalog/scylladb/scylla-operator/scylla.scylladb.com/v1alpha1/nodeconfigs.yaml b/crd-catalog/scylladb/scylla-operator/scylla.scylladb.com/v1alpha1/nodeconfigs.yaml index d93d7e770..aaffaa77f 100644 --- a/crd-catalog/scylladb/scylla-operator/scylla.scylladb.com/v1alpha1/nodeconfigs.yaml +++ b/crd-catalog/scylladb/scylla-operator/scylla.scylladb.com/v1alpha1/nodeconfigs.yaml @@ -14,6 +14,15 @@ spec: scope: "Cluster" versions: - additionalPrinterColumns: + - jsonPath: ".status.conditions[?(@.type=='Available')].status" + name: "AVAILABLE" + type: "string" + - jsonPath: ".status.conditions[?(@.type=='Progressing')].status" + name: "PROGRESSING" + type: "string" + - jsonPath: ".status.conditions[?(@.type=='Degraded')].status" + name: "DEGRADED" + type: "string" - jsonPath: ".metadata.creationTimestamp" name: "AGE" type: "date" diff --git a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/gateways.yaml b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/gateways.yaml index e3795741d..482a78346 100644 --- a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/gateways.yaml +++ b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/gateways.yaml @@ -1295,6 +1295,22 @@ spec: type: "object" tap: properties: + maxBufferedRxBytes: + maximum: 4294967295.0 + minimum: 0.0 + nullable: true + type: "integer" + maxBufferedTxBytes: + maximum: 4294967295.0 + minimum: 0.0 + nullable: true + type: "integer" + recordDownstreamConnection: + nullable: true + type: "boolean" + recordHeadersReceivedTime: + nullable: true + type: "boolean" sinks: items: properties: @@ -3223,6 +3239,22 @@ spec: type: "object" tap: properties: + maxBufferedRxBytes: + maximum: 4294967295.0 + minimum: 0.0 + nullable: true + type: "integer" + maxBufferedTxBytes: + maximum: 4294967295.0 + minimum: 0.0 + nullable: true + type: "integer" + recordDownstreamConnection: + nullable: true + type: "boolean" + recordHeadersReceivedTime: + nullable: true + type: "boolean" sinks: items: properties: diff --git a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/httpgateways.yaml b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/httpgateways.yaml index 8d7ef0fc8..df9e4c6e5 100644 --- a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/httpgateways.yaml +++ b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/httpgateways.yaml @@ -1289,6 +1289,22 @@ spec: type: "object" tap: properties: + maxBufferedRxBytes: + maximum: 4294967295.0 + minimum: 0.0 + nullable: true + type: "integer" + maxBufferedTxBytes: + maximum: 4294967295.0 + minimum: 0.0 + nullable: true + type: "integer" + recordDownstreamConnection: + nullable: true + type: "boolean" + recordHeadersReceivedTime: + nullable: true + type: "boolean" sinks: items: properties: diff --git a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/routeoptions.yaml b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/routeoptions.yaml index 2f40d23d8..0ee7bd9d4 100644 --- a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/routeoptions.yaml +++ b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/routeoptions.yaml @@ -106,6 +106,27 @@ spec: type: "object" embedding: properties: + azureOpenai: + properties: + apiVersion: + type: "string" + authToken: + properties: + inline: + type: "string" + secretRef: + properties: + name: + type: "string" + namespace: + type: "string" + type: "object" + type: "object" + deploymentName: + type: "string" + endpoint: + type: "string" + type: "object" openai: properties: authToken: @@ -139,6 +160,27 @@ spec: type: "object" embedding: properties: + azureOpenai: + properties: + apiVersion: + type: "string" + authToken: + properties: + inline: + type: "string" + secretRef: + properties: + name: + type: "string" + namespace: + type: "string" + type: "object" + type: "object" + deploymentName: + type: "string" + endpoint: + type: "string" + type: "object" openai: properties: authToken: @@ -625,6 +667,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" beforeExtAuth: properties: @@ -702,6 +747,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" type: "object" jwtStaged: diff --git a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/routetables.yaml b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/routetables.yaml index 28c2252f6..b13a84279 100644 --- a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/routetables.yaml +++ b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/routetables.yaml @@ -216,6 +216,27 @@ spec: type: "object" embedding: properties: + azureOpenai: + properties: + apiVersion: + type: "string" + authToken: + properties: + inline: + type: "string" + secretRef: + properties: + name: + type: "string" + namespace: + type: "string" + type: "object" + type: "object" + deploymentName: + type: "string" + endpoint: + type: "string" + type: "object" openai: properties: authToken: @@ -249,6 +270,27 @@ spec: type: "object" embedding: properties: + azureOpenai: + properties: + apiVersion: + type: "string" + authToken: + properties: + inline: + type: "string" + secretRef: + properties: + name: + type: "string" + namespace: + type: "string" + type: "object" + type: "object" + deploymentName: + type: "string" + endpoint: + type: "string" + type: "object" openai: properties: authToken: @@ -735,6 +777,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" beforeExtAuth: properties: @@ -812,6 +857,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" type: "object" jwtStaged: diff --git a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/virtualhostoptions.yaml b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/virtualhostoptions.yaml index 824d57e70..129a9230a 100644 --- a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/virtualhostoptions.yaml +++ b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/virtualhostoptions.yaml @@ -441,6 +441,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" jwtStaged: properties: @@ -520,6 +523,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" beforeExtAuth: properties: @@ -597,6 +603,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" type: "object" rateLimitConfigs: diff --git a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/virtualservices.yaml b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/virtualservices.yaml index b1c5b5673..e945dced8 100644 --- a/crd-catalog/solo-io/gloo/gateway.solo.io/v1/virtualservices.yaml +++ b/crd-catalog/solo-io/gloo/gateway.solo.io/v1/virtualservices.yaml @@ -531,6 +531,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" jwtStaged: properties: @@ -610,6 +613,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" beforeExtAuth: properties: @@ -687,6 +693,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" type: "object" rateLimitConfigs: @@ -3220,6 +3229,27 @@ spec: type: "object" embedding: properties: + azureOpenai: + properties: + apiVersion: + type: "string" + authToken: + properties: + inline: + type: "string" + secretRef: + properties: + name: + type: "string" + namespace: + type: "string" + type: "object" + type: "object" + deploymentName: + type: "string" + endpoint: + type: "string" + type: "object" openai: properties: authToken: @@ -3253,6 +3283,27 @@ spec: type: "object" embedding: properties: + azureOpenai: + properties: + apiVersion: + type: "string" + authToken: + properties: + inline: + type: "string" + secretRef: + properties: + name: + type: "string" + namespace: + type: "string" + type: "object" + type: "object" + deploymentName: + type: "string" + endpoint: + type: "string" + type: "object" openai: properties: authToken: @@ -3739,6 +3790,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" beforeExtAuth: properties: @@ -3816,6 +3870,9 @@ spec: type: "object" type: "object" type: "object" + validationPolicy: + type: "string" + x-kubernetes-int-or-string: true type: "object" type: "object" jwtStaged: diff --git a/crd-catalog/solo-io/gloo/gloo.solo.io/v1/upstreams.yaml b/crd-catalog/solo-io/gloo/gloo.solo.io/v1/upstreams.yaml index f236e53d7..3eddd271a 100644 --- a/crd-catalog/solo-io/gloo/gloo.solo.io/v1/upstreams.yaml +++ b/crd-catalog/solo-io/gloo/gloo.solo.io/v1/upstreams.yaml @@ -48,6 +48,23 @@ spec: version: type: "string" type: "object" + azureOpenai: + properties: + authToken: + properties: + inline: + type: "string" + secretRef: + properties: + name: + type: "string" + namespace: + type: "string" + type: "object" + type: "object" + endpoint: + type: "string" + type: "object" mistral: properties: authToken: diff --git a/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/brokers.yaml b/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/brokers.yaml index ee103bbd8..c9e482c2b 100644 --- a/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/brokers.yaml +++ b/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/brokers.yaml @@ -29,6 +29,12 @@ spec: spec: description: "BrokerSpec defines the desired state of Broker." properties: + clustersetIPCIDRRange: + description: "ClustersetIP supernet range for allocating ClustersetIPCIDRs to each cluster." + type: "string" + clustersetIPEnabled: + description: "Enable ClustersetIP default for connecting clusters." + type: "boolean" components: description: "List of the components to be installed - any of [service-discovery, connectivity]." items: diff --git a/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/servicediscoveries.yaml b/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/servicediscoveries.yaml index 72d1033df..41a2e3387 100644 --- a/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/servicediscoveries.yaml +++ b/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/servicediscoveries.yaml @@ -43,6 +43,10 @@ spec: type: "string" clusterID: type: "string" + clustersetIPCIDR: + type: "string" + clustersetIPEnabled: + type: "boolean" coreDNSCustomConfig: properties: configMapName: diff --git a/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/submariners.yaml b/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/submariners.yaml index 846583cbf..749944e9c 100644 --- a/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/submariners.yaml +++ b/crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/submariners.yaml @@ -79,6 +79,12 @@ spec: clusterID: description: "The cluster ID used to identify the tunnels." type: "string" + clustersetIPCIDR: + description: "ClustersetIP CIDR for allocating ClustersetIPs to exported services." + type: "string" + clustersetIPEnabled: + description: "Enable ClustersetIP default for services exported on this cluster." + type: "boolean" colorCodes: type: "string" connectionHealthCheck: @@ -196,6 +202,9 @@ spec: clusterID: description: "The current cluster ID." type: "string" + clustersetIPCIDR: + description: "The current clustersetIP CIDR." + type: "string" colorCodes: type: "string" deploymentInfo: diff --git a/crd-catalog/tigera/operator/operator.tigera.io/v1/apiservers.yaml b/crd-catalog/tigera/operator/operator.tigera.io/v1/apiservers.yaml index d71156fd3..03535fdf6 100644 --- a/crd-catalog/tigera/operator/operator.tigera.io/v1/apiservers.yaml +++ b/crd-catalog/tigera/operator/operator.tigera.io/v1/apiservers.yaml @@ -557,6 +557,7 @@ spec: enum: - "calico-apiserver" - "tigera-queryserver" + - "calico-l7-admission-controller" type: "string" resources: description: "Resources allows customization of limits and requests for compute resources such as cpu and memory.\nIf specified, this overrides the named API server Deployment container's resources.\nIf omitted, the API server Deployment will use its default value for this container's resources.\nIf used in conjunction with the deprecated ComponentResources, then this value takes precedence." diff --git a/crd-catalog/tigera/operator/operator.tigera.io/v1/applicationlayers.yaml b/crd-catalog/tigera/operator/operator.tigera.io/v1/applicationlayers.yaml index 45c04f87b..69fa6ae49 100644 --- a/crd-catalog/tigera/operator/operator.tigera.io/v1/applicationlayers.yaml +++ b/crd-catalog/tigera/operator/operator.tigera.io/v1/applicationlayers.yaml @@ -31,6 +31,9 @@ spec: properties: applicationLayerPolicy: description: "Application Layer Policy controls whether or not ALP enforcement is enabled for the cluster.\nWhen enabled, NetworkPolicies with HTTP Match rules may be defined to opt-in workloads for traffic enforcement on the application layer." + enum: + - "Enabled" + - "Disabled" type: "string" envoy: description: "User-configurable settings for the Envoy proxy." @@ -170,6 +173,9 @@ spec: properties: collectLogs: description: "This setting enables or disable log collection.\nAllowed values are Enabled or Disabled." + enum: + - "Enabled" + - "Disabled" type: "string" logIntervalSeconds: description: "Interval in seconds for sending L7 log information for processing.\nDefault: 5 sec" @@ -180,8 +186,17 @@ spec: format: "int64" type: "integer" type: "object" + sidecarInjection: + description: "SidecarInjection controls whether or not sidecar injection is enabled for the cluster.\nWhen enabled, pods with the label\n\"applicationlayer.projectcalico.org/sidecar\"=\"true\" will have their L7 functionality\nsuch as WAF and ALP implemented using an injected sidecar instead of a per-host proxy.\nThe per-host proxy will continue to be used for pods without this label." + enum: + - "Enabled" + - "Disabled" + type: "string" webApplicationFirewall: description: "WebApplicationFirewall controls whether or not ModSecurity enforcement is enabled for the cluster.\nWhen enabled, Services may opt-in to having ingress traffic examed by ModSecurity." + enum: + - "Enabled" + - "Disabled" type: "string" type: "object" status: diff --git a/crd-catalog/tigera/operator/operator.tigera.io/v1/intrusiondetections.yaml b/crd-catalog/tigera/operator/operator.tigera.io/v1/intrusiondetections.yaml index 56279c295..a2981db50 100644 --- a/crd-catalog/tigera/operator/operator.tigera.io/v1/intrusiondetections.yaml +++ b/crd-catalog/tigera/operator/operator.tigera.io/v1/intrusiondetections.yaml @@ -88,6 +88,77 @@ spec: - "resourceRequirements" type: "object" type: "array" + deepPacketInspectionDaemonset: + description: "DeepPacketInspectionDaemonset configures the DPI Daemonset" + properties: + spec: + description: "DPIDaemonsetSpec configures the DPI Daemonset" + properties: + template: + description: "Template specifies DPI Daemonset Template" + properties: + spec: + description: "Spec specifies DPI Daemonset Template Spec" + properties: + initContainers: + description: "List of DPI Daemonset Init containers definitions" + items: + properties: + image: + description: "Image name for the init container" + type: "string" + name: + description: "Name is an enum that identifies the init container by its name." + enum: + - "snort-rules" + type: "string" + resources: + description: "Resources allows customization of limits and requests for compute resources such as cpu and memory.\nIf specified, this overrides the init container's resources.\nIf omitted, the default values will be used for the init container's resources." + properties: + claims: + description: "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\nThis field is immutable. It can only be set for containers." + items: + description: "ResourceClaim references one entry in PodSpec.ResourceClaims." + properties: + name: + description: "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." + type: "string" + required: + - "name" + type: "object" + type: "array" + x-kubernetes-list-map-keys: + - "name" + x-kubernetes-list-type: "map" + limits: + additionalProperties: + anyOf: + - type: "integer" + - type: "string" + pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" + x-kubernetes-int-or-string: true + description: "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + type: "object" + requests: + additionalProperties: + anyOf: + - type: "integer" + - type: "string" + pattern: "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$" + x-kubernetes-int-or-string: true + description: "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/" + type: "object" + type: "object" + required: + - "image" + - "name" + type: "object" + maxItems: 1 + type: "array" + type: "object" + type: "object" + type: "object" + type: "object" intrusionDetectionControllerDeployment: description: "IntrusionDetectionControllerDeployment configures the IntrusionDetection Controller Deployment." properties: diff --git a/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellclusters.yaml b/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellclusters.yaml index 4cecba38c..bb57e6cf7 100644 --- a/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellclusters.yaml +++ b/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellclusters.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.14.0" + controller-gen.kubebuilder.io/version: "v0.16.2" name: "tinkerbellclusters.infrastructure.cluster.x-k8s.io" spec: group: "infrastructure.cluster.x-k8s.io" @@ -41,7 +41,7 @@ spec: description: "TinkerbellClusterSpec defines the desired state of TinkerbellCluster." properties: controlPlaneEndpoint: - description: "ControlPlaneEndpoint is a required field by ClusterAPI v1beta1.\n\n\nSee https://cluster-api.sigs.k8s.io/developer/architecture/controllers/cluster.html\nfor more details." + description: "ControlPlaneEndpoint is a required field by ClusterAPI v1beta1.\n\nSee https://cluster-api.sigs.k8s.io/developer/architecture/controllers/cluster.html\nfor more details." properties: host: description: "The hostname on which the API server is serving." diff --git a/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellmachines.yaml b/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellmachines.yaml index dda9ccde4..8e4f88fa3 100644 --- a/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellmachines.yaml +++ b/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellmachines.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.14.0" + controller-gen.kubebuilder.io/version: "v0.16.2" name: "tinkerbellmachines.infrastructure.cluster.x-k8s.io" spec: group: "infrastructure.cluster.x-k8s.io" @@ -82,11 +82,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -132,11 +134,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -190,7 +194,7 @@ spec: type: "object" type: "array" errorMessage: - description: "ErrorMessage will be set in the event that there is a terminal problem\nreconciling the Machine and will contain a more verbose string suitable\nfor logging and human consumption.\n\n\nThis field should not be set for transitive errors that a controller\nfaces that are expected to be fixed automatically over\ntime (like service outages), but instead indicate that something is\nfundamentally wrong with the Machine's spec or the configuration of\nthe controller, and that manual intervention is required. Examples\nof terminal errors would be invalid combinations of settings in the\nspec, values that are unsupported by the controller, or the\nresponsible controller itself being critically misconfigured.\n\n\nAny transient errors that occur during the reconciliation of Machines\ncan be added as events to the Machine object and/or logged in the\ncontroller's output." + description: "ErrorMessage will be set in the event that there is a terminal problem\nreconciling the Machine and will contain a more verbose string suitable\nfor logging and human consumption.\n\nThis field should not be set for transitive errors that a controller\nfaces that are expected to be fixed automatically over\ntime (like service outages), but instead indicate that something is\nfundamentally wrong with the Machine's spec or the configuration of\nthe controller, and that manual intervention is required. Examples\nof terminal errors would be invalid combinations of settings in the\nspec, values that are unsupported by the controller, or the\nresponsible controller itself being critically misconfigured.\n\nAny transient errors that occur during the reconciliation of Machines\ncan be added as events to the Machine object and/or logged in the\ncontroller's output." type: "string" errorReason: description: "Any transient errors that occur during the reconciliation of Machines\ncan be added as events to the Machine object and/or logged in the\ncontroller's output." diff --git a/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellmachinetemplates.yaml b/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellmachinetemplates.yaml index fc041a3a7..a974346ea 100644 --- a/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellmachinetemplates.yaml +++ b/crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellmachinetemplates.yaml @@ -2,7 +2,7 @@ apiVersion: "apiextensions.k8s.io/v1" kind: "CustomResourceDefinition" metadata: annotations: - controller-gen.kubebuilder.io/version: "v0.14.0" + controller-gen.kubebuilder.io/version: "v0.16.2" name: "tinkerbellmachinetemplates.infrastructure.cluster.x-k8s.io" spec: group: "infrastructure.cluster.x-k8s.io" @@ -67,11 +67,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" @@ -117,11 +119,13 @@ spec: items: type: "string" type: "array" + x-kubernetes-list-type: "atomic" required: - "key" - "operator" type: "object" type: "array" + x-kubernetes-list-type: "atomic" matchLabels: additionalProperties: type: "string" diff --git a/kube-custom-resources-rs/src/about_k8s_io/v1alpha1/clusterproperties.rs b/kube-custom-resources-rs/src/about_k8s_io/v1alpha1/clusterproperties.rs index ab46d614a..7ef0d9ba1 100644 --- a/kube-custom-resources-rs/src/about_k8s_io/v1alpha1/clusterproperties.rs +++ b/kube-custom-resources-rs/src/about_k8s_io/v1alpha1/clusterproperties.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/about-api/about.k8s.io/v1alpha1/clusterproperties.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/acid_zalan_do/v1/postgresteams.rs b/kube-custom-resources-rs/src/acid_zalan_do/v1/postgresteams.rs index b0743640f..ada1d3181 100644 --- a/kube-custom-resources-rs/src/acid_zalan_do/v1/postgresteams.rs +++ b/kube-custom-resources-rs/src/acid_zalan_do/v1/postgresteams.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/zalando/postgres-operator/acid.zalan.do/v1/postgresteams.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/acme_cert_manager_io/v1/challenges.rs b/kube-custom-resources-rs/src/acme_cert_manager_io/v1/challenges.rs index 600c99ed4..afc89aff4 100644 --- a/kube-custom-resources-rs/src/acme_cert_manager_io/v1/challenges.rs +++ b/kube-custom-resources-rs/src/acme_cert_manager_io/v1/challenges.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cert-manager/cert-manager/acme.cert-manager.io/v1/challenges.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/acme_cert_manager_io/v1/orders.rs b/kube-custom-resources-rs/src/acme_cert_manager_io/v1/orders.rs index 6197b5a61..e15b55365 100644 --- a/kube-custom-resources-rs/src/acme_cert_manager_io/v1/orders.rs +++ b/kube-custom-resources-rs/src/acme_cert_manager_io/v1/orders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cert-manager/cert-manager/acme.cert-manager.io/v1/orders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificateauthorities.rs b/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificateauthorities.rs index c04080b10..52df6c97a 100644 --- a/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificateauthorities.rs +++ b/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificateauthorities.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/acmpca-controller/acmpca.services.k8s.aws/v1alpha1/certificateauthorities.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificateauthorityactivations.rs b/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificateauthorityactivations.rs index 17d04352a..efa358f82 100644 --- a/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificateauthorityactivations.rs +++ b/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificateauthorityactivations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/acmpca-controller/acmpca.services.k8s.aws/v1alpha1/certificateauthorityactivations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificates.rs b/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificates.rs index 7a4f6b7bd..1b69a8aef 100644 --- a/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificates.rs +++ b/kube-custom-resources-rs/src/acmpca_services_k8s_aws/v1alpha1/certificates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/acmpca-controller/acmpca.services.k8s.aws/v1alpha1/certificates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/actions_github_com/v1alpha1/autoscalinglisteners.rs b/kube-custom-resources-rs/src/actions_github_com/v1alpha1/autoscalinglisteners.rs index b0defdd11..56256f2b6 100644 --- a/kube-custom-resources-rs/src/actions_github_com/v1alpha1/autoscalinglisteners.rs +++ b/kube-custom-resources-rs/src/actions_github_com/v1alpha1/autoscalinglisteners.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/actions/actions-runner-controller/actions.github.com/v1alpha1/autoscalinglisteners.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/actions_github_com/v1alpha1/autoscalingrunnersets.rs b/kube-custom-resources-rs/src/actions_github_com/v1alpha1/autoscalingrunnersets.rs index 40e642eb2..93b0b66b3 100644 --- a/kube-custom-resources-rs/src/actions_github_com/v1alpha1/autoscalingrunnersets.rs +++ b/kube-custom-resources-rs/src/actions_github_com/v1alpha1/autoscalingrunnersets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/actions/actions-runner-controller/actions.github.com/v1alpha1/autoscalingrunnersets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/actions_github_com/v1alpha1/ephemeralrunnersets.rs b/kube-custom-resources-rs/src/actions_github_com/v1alpha1/ephemeralrunnersets.rs index f339a39dd..5d3dcb0fa 100644 --- a/kube-custom-resources-rs/src/actions_github_com/v1alpha1/ephemeralrunnersets.rs +++ b/kube-custom-resources-rs/src/actions_github_com/v1alpha1/ephemeralrunnersets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/actions/actions-runner-controller/actions.github.com/v1alpha1/ephemeralrunnersets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/horizontalrunnerautoscalers.rs b/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/horizontalrunnerautoscalers.rs index d041b3177..f7f9a727f 100644 --- a/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/horizontalrunnerautoscalers.rs +++ b/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/horizontalrunnerautoscalers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/actions/actions-runner-controller/actions.summerwind.dev/v1alpha1/horizontalrunnerautoscalers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnerdeployments.rs b/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnerdeployments.rs index f6d28bef9..971014d81 100644 --- a/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnerdeployments.rs +++ b/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnerdeployments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/actions/actions-runner-controller/actions.summerwind.dev/v1alpha1/runnerdeployments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnerreplicasets.rs b/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnerreplicasets.rs index c905c5b44..437957df4 100644 --- a/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnerreplicasets.rs +++ b/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnerreplicasets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/actions/actions-runner-controller/actions.summerwind.dev/v1alpha1/runnerreplicasets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runners.rs b/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runners.rs index a53cf364a..44f8bfaf3 100644 --- a/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runners.rs +++ b/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runners.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/actions/actions-runner-controller/actions.summerwind.dev/v1alpha1/runners.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnersets.rs b/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnersets.rs index 1e5c65c28..3e1dbc083 100644 --- a/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnersets.rs +++ b/kube-custom-resources-rs/src/actions_summerwind_dev/v1alpha1/runnersets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/actions/actions-runner-controller/actions.summerwind.dev/v1alpha1/runnersets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha3/clusterresourcesetbindings.rs b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha3/clusterresourcesetbindings.rs index b87e87f18..f790ddb71 100644 --- a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha3/clusterresourcesetbindings.rs +++ b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha3/clusterresourcesetbindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/addons.cluster.x-k8s.io/v1alpha3/clusterresourcesetbindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha3/clusterresourcesets.rs b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha3/clusterresourcesets.rs index ca0b074e4..0d360a500 100644 --- a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha3/clusterresourcesets.rs +++ b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha3/clusterresourcesets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/addons.cluster.x-k8s.io/v1alpha3/clusterresourcesets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha4/clusterresourcesetbindings.rs b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha4/clusterresourcesetbindings.rs index 9fd6dd0fe..26ce3c604 100644 --- a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha4/clusterresourcesetbindings.rs +++ b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha4/clusterresourcesetbindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/addons.cluster.x-k8s.io/v1alpha4/clusterresourcesetbindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha4/clusterresourcesets.rs b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha4/clusterresourcesets.rs index 6595383c3..f38575871 100644 --- a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha4/clusterresourcesets.rs +++ b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1alpha4/clusterresourcesets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/addons.cluster.x-k8s.io/v1alpha4/clusterresourcesets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1beta1/clusterresourcesetbindings.rs b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1beta1/clusterresourcesetbindings.rs index a196c0d0c..457026dc5 100644 --- a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1beta1/clusterresourcesetbindings.rs +++ b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1beta1/clusterresourcesetbindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/addons.cluster.x-k8s.io/v1beta1/clusterresourcesetbindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1beta1/clusterresourcesets.rs b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1beta1/clusterresourcesets.rs index f6ab97af1..b26f1560c 100644 --- a/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1beta1/clusterresourcesets.rs +++ b/kube-custom-resources-rs/src/addons_cluster_x_k8s_io/v1beta1/clusterresourcesets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/addons.cluster.x-k8s.io/v1beta1/clusterresourcesets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/agent_k8s_elastic_co/v1alpha1/agents.rs b/kube-custom-resources-rs/src/agent_k8s_elastic_co/v1alpha1/agents.rs index b38439f54..83c0ef83a 100644 --- a/kube-custom-resources-rs/src/agent_k8s_elastic_co/v1alpha1/agents.rs +++ b/kube-custom-resources-rs/src/agent_k8s_elastic_co/v1alpha1/agents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/agent.k8s.elastic.co/v1alpha1/agents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/awsdatacenterconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/awsdatacenterconfigs.rs index 3e649accd..f33afece8 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/awsdatacenterconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/awsdatacenterconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/awsdatacenterconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/awsiamconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/awsiamconfigs.rs index 29af8bfe4..8755f5970 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/awsiamconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/awsiamconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/awsiamconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/bundles.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/bundles.rs index 2992f621d..1428181ae 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/bundles.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/bundles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/bundles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/cloudstackdatacenterconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/cloudstackdatacenterconfigs.rs index 78b173c1a..c847192f3 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/cloudstackdatacenterconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/cloudstackdatacenterconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/cloudstackdatacenterconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/cloudstackmachineconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/cloudstackmachineconfigs.rs index 2ccdf4412..d590cca87 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/cloudstackmachineconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/cloudstackmachineconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/cloudstackmachineconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/clusters.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/clusters.rs index 8c202a910..1cba7c726 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/clusters.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/clusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/clusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/controlplaneupgrades.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/controlplaneupgrades.rs index f3211f62b..f39fc339b 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/controlplaneupgrades.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/controlplaneupgrades.rs @@ -1,11 +1,12 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/controlplaneupgrades.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -20,7 +21,7 @@ use self::prelude::*; pub struct ControlPlaneUpgradeSpec { /// ControlPlane is a reference to the KubeadmControlPlane object to upgrade. #[serde(rename = "controlPlane")] - pub control_plane: ControlPlaneUpgradeControlPlane, + pub control_plane: ObjectReference, /// ControlPlaneSpecData contains base64 encoded KCP spec that's used to update the statuses of CAPI objects once the control plane upgrade is done. This field is needed so that we have a static copy of the control plane spec in case it gets modified after the ControlPlaneUpgrade was created, as ControlPlane is a reference to the object in real time. #[serde(rename = "controlPlaneSpecData")] pub control_plane_spec_data: String, @@ -32,7 +33,7 @@ pub struct ControlPlaneUpgradeSpec { pub kubernetes_version: String, /// MachinesRequireUpgrade is a list of references to CAPI machines that need to be upgraded. #[serde(rename = "machinesRequireUpgrade")] - pub machines_require_upgrade: Vec, + pub machines_require_upgrade: Vec, } /// ControlPlane is a reference to the KubeadmControlPlane object to upgrade. @@ -61,33 +62,6 @@ pub struct ControlPlaneUpgradeControlPlane { pub uid: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ControlPlaneUpgradeMachinesRequireUpgrade { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// ControlPlaneUpgradeStatus defines the observed state of ControlPlaneUpgrade. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ControlPlaneUpgradeStatus { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/dockerdatacenterconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/dockerdatacenterconfigs.rs index 16393f0a2..656856909 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/dockerdatacenterconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/dockerdatacenterconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/dockerdatacenterconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/eksareleases.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/eksareleases.rs index d99657b22..e906cc7af 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/eksareleases.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/eksareleases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/eksareleases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/fluxconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/fluxconfigs.rs index f74817934..27cdd6bbd 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/fluxconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/fluxconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/fluxconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/gitopsconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/gitopsconfigs.rs index 201c2ceee..53f1d43d0 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/gitopsconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/gitopsconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/gitopsconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/machinedeploymentupgrades.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/machinedeploymentupgrades.rs index 88fd0c638..101bcd8e3 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/machinedeploymentupgrades.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/machinedeploymentupgrades.rs @@ -1,11 +1,12 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/machinedeploymentupgrades.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -23,13 +24,13 @@ pub struct MachineDeploymentUpgradeSpec { pub kubernetes_version: String, /// MachineDeployment is a reference to the KubeadmControlPlane object to upgrade. #[serde(rename = "machineDeployment")] - pub machine_deployment: MachineDeploymentUpgradeMachineDeployment, + pub machine_deployment: ObjectReference, /// MachineSpecData is a base64 encoded json string value of the machineDeplopyment.Spec.Template.Spec field that's specification of the desired behavior of the machine. #[serde(rename = "machineSpecData")] pub machine_spec_data: String, /// MachinesRequireUpgrade is a list of references to CAPI machines that need to be upgraded. #[serde(rename = "machinesRequireUpgrade")] - pub machines_require_upgrade: Vec, + pub machines_require_upgrade: Vec, } /// MachineDeployment is a reference to the KubeadmControlPlane object to upgrade. @@ -58,33 +59,6 @@ pub struct MachineDeploymentUpgradeMachineDeployment { pub uid: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct MachineDeploymentUpgradeMachinesRequireUpgrade { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// MachineDeploymentUpgradeStatus defines the observed state of MachineDeploymentUpgrade. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct MachineDeploymentUpgradeStatus { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nodeupgrades.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nodeupgrades.rs index 84d29c4c0..ca1f303c2 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nodeupgrades.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nodeupgrades.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/nodeupgrades.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -29,7 +30,7 @@ pub struct NodeUpgradeSpec { #[serde(rename = "kubernetesVersion")] pub kubernetes_version: String, /// Machine is a reference to the CAPI Machine that needs to be upgraded. - pub machine: NodeUpgradeMachine, + pub machine: ObjectReference, } /// Machine is a reference to the CAPI Machine that needs to be upgraded. diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nutanixdatacenterconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nutanixdatacenterconfigs.rs index 5047a4a86..19005e45b 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nutanixdatacenterconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nutanixdatacenterconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/nutanixdatacenterconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nutanixmachineconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nutanixmachineconfigs.rs index 65cb7ae05..aff8ebb44 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nutanixmachineconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/nutanixmachineconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/nutanixmachineconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -171,7 +172,7 @@ pub struct NutanixMachineConfigStatus { pub conditions: Option>, /// NodeRef is a reference to the corresponding workload cluster Node if it exists. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeRef")] - pub node_ref: Option, + pub node_ref: Option, /// Ready is true when the provider resource is ready. #[serde(default, skip_serializing_if = "Option::is_none")] pub ready: Option, diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/oidcconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/oidcconfigs.rs index 68531116e..1ac21471b 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/oidcconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/oidcconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/oidcconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowdatacenterconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowdatacenterconfigs.rs index 33e856949..297966b62 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowdatacenterconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowdatacenterconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/snowdatacenterconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowippools.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowippools.rs index eed412846..7c28115df 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowippools.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowippools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/snowippools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowmachineconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowmachineconfigs.rs index e9d911778..894c6b233 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowmachineconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/snowmachineconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/snowmachineconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbelldatacenterconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbelldatacenterconfigs.rs index 654878617..bee7e8a97 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbelldatacenterconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbelldatacenterconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/tinkerbelldatacenterconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbellmachineconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbellmachineconfigs.rs index e0500a52f..ae26cbef3 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbellmachineconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbellmachineconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/tinkerbellmachineconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbelltemplateconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbelltemplateconfigs.rs index 079b37b4c..892c6426f 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbelltemplateconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/tinkerbelltemplateconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/tinkerbelltemplateconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/vspheredatacenterconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/vspheredatacenterconfigs.rs index cde8218cf..fdacafff0 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/vspheredatacenterconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/vspheredatacenterconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/vspheredatacenterconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/vspheremachineconfigs.rs b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/vspheremachineconfigs.rs index 173410021..d115c63de 100644 --- a/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/vspheremachineconfigs.rs +++ b/kube-custom-resources-rs/src/anywhere_eks_amazonaws_com/v1alpha1/vspheremachineconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/eks-anywhere/anywhere.eks.amazonaws.com/v1alpha1/vspheremachineconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apacheweb_arsenal_dev/v1alpha1/apachewebs.rs b/kube-custom-resources-rs/src/apacheweb_arsenal_dev/v1alpha1/apachewebs.rs index e47e1b389..1ec841267 100644 --- a/kube-custom-resources-rs/src/apacheweb_arsenal_dev/v1alpha1/apachewebs.rs +++ b/kube-custom-resources-rs/src/apacheweb_arsenal_dev/v1alpha1/apachewebs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/arsenalzp/apch-operator/apacheweb.arsenal.dev/v1alpha1/apachewebs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/configproviders.rs b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/configproviders.rs index cd2f65f3b..d273a635a 100644 --- a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/configproviders.rs +++ b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/configproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/CleverCloud/clever-operator/api.clever-cloud.com/v1/configproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/elasticsearches.rs b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/elasticsearches.rs index 8ed2d62eb..f45e2aff1 100644 --- a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/elasticsearches.rs +++ b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/elasticsearches.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/CleverCloud/clever-operator/api.clever-cloud.com/v1/elasticsearches.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/mongodbs.rs b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/mongodbs.rs index 9bdae51ad..7207e1960 100644 --- a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/mongodbs.rs +++ b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/mongodbs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/CleverCloud/clever-operator/api.clever-cloud.com/v1/mongodbs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/mysqls.rs b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/mysqls.rs index b2af600e5..9d1f5ada8 100644 --- a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/mysqls.rs +++ b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/mysqls.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/CleverCloud/clever-operator/api.clever-cloud.com/v1/mysqls.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/postgresqls.rs b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/postgresqls.rs index 5fc3fa90c..b164d2f32 100644 --- a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/postgresqls.rs +++ b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/postgresqls.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/CleverCloud/clever-operator/api.clever-cloud.com/v1/postgresqls.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/redis.rs b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/redis.rs index eab3334d0..bb7627b66 100644 --- a/kube-custom-resources-rs/src/api_clever_cloud_com/v1/redis.rs +++ b/kube-custom-resources-rs/src/api_clever_cloud_com/v1/redis.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/CleverCloud/clever-operator/api.clever-cloud.com/v1/redis.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/api_clever_cloud_com/v1beta1/pulsars.rs b/kube-custom-resources-rs/src/api_clever_cloud_com/v1beta1/pulsars.rs index 94fbe32b8..d58a90797 100644 --- a/kube-custom-resources-rs/src/api_clever_cloud_com/v1beta1/pulsars.rs +++ b/kube-custom-resources-rs/src/api_clever_cloud_com/v1beta1/pulsars.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/CleverCloud/clever-operator/api.clever-cloud.com/v1beta1/pulsars.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/api_kubemod_io/v1beta1/modrules.rs b/kube-custom-resources-rs/src/api_kubemod_io/v1beta1/modrules.rs index 87c9c9fe4..34695b22c 100644 --- a/kube-custom-resources-rs/src/api_kubemod_io/v1beta1/modrules.rs +++ b/kube-custom-resources-rs/src/api_kubemod_io/v1beta1/modrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubemod/kubemod/api.kubemod.io/v1beta1/modrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apicodegen_apimatic_io/v1beta1/apimatics.rs b/kube-custom-resources-rs/src/apicodegen_apimatic_io/v1beta1/apimatics.rs index 7fb87ac10..87ba2b562 100644 --- a/kube-custom-resources-rs/src/apicodegen_apimatic_io/v1beta1/apimatics.rs +++ b/kube-custom-resources-rs/src/apicodegen_apimatic_io/v1beta1/apimatics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apimatic/apimatic-kubernetes-operator/apicodegen.apimatic.io/v1beta1/apimatics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apiextensions_crossplane_io/v1/compositeresourcedefinitions.rs b/kube-custom-resources-rs/src/apiextensions_crossplane_io/v1/compositeresourcedefinitions.rs index e4a5e05b8..f4bf83853 100644 --- a/kube-custom-resources-rs/src/apiextensions_crossplane_io/v1/compositeresourcedefinitions.rs +++ b/kube-custom-resources-rs/src/apiextensions_crossplane_io/v1/compositeresourcedefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/crossplane/crossplane/apiextensions.crossplane.io/v1/compositeresourcedefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/apis.rs b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/apis.rs index 3db85326c..02925004f 100644 --- a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/apis.rs +++ b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/apis.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/apigatewayv2-controller/apigatewayv2.services.k8s.aws/v1alpha1/apis.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/authorizers.rs b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/authorizers.rs index 0a32f794d..b75ccc982 100644 --- a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/authorizers.rs +++ b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/authorizers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/apigatewayv2-controller/apigatewayv2.services.k8s.aws/v1alpha1/authorizers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/deployments.rs b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/deployments.rs index 4a3562565..853158615 100644 --- a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/deployments.rs +++ b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/deployments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/apigatewayv2-controller/apigatewayv2.services.k8s.aws/v1alpha1/deployments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/routes.rs b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/routes.rs index e3bb851d0..3ec3aac70 100644 --- a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/routes.rs +++ b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/routes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/apigatewayv2-controller/apigatewayv2.services.k8s.aws/v1alpha1/routes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/stages.rs b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/stages.rs index 69f0a8dc2..d3136d325 100644 --- a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/stages.rs +++ b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/stages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/apigatewayv2-controller/apigatewayv2.services.k8s.aws/v1alpha1/stages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/vpclinks.rs b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/vpclinks.rs index 752b232ca..458d98238 100644 --- a/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/vpclinks.rs +++ b/kube-custom-resources-rs/src/apigatewayv2_services_k8s_aws/v1alpha1/vpclinks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/apigatewayv2-controller/apigatewayv2.services.k8s.aws/v1alpha1/vpclinks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixclusterconfigs.rs b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixclusterconfigs.rs index 9b3447b1f..e9ba4bb88 100644 --- a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixclusterconfigs.rs +++ b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixclusterconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/apisix-ingress-controller/apisix.apache.org/v2/apisixclusterconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixconsumers.rs b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixconsumers.rs index 590c05523..21a20cba4 100644 --- a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixconsumers.rs +++ b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixconsumers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/apisix-ingress-controller/apisix.apache.org/v2/apisixconsumers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixglobalrules.rs b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixglobalrules.rs index 7054592bb..03a8ee4d0 100644 --- a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixglobalrules.rs +++ b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixglobalrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/apisix-ingress-controller/apisix.apache.org/v2/apisixglobalrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixpluginconfigs.rs b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixpluginconfigs.rs index e04bdcfe9..713bcb175 100644 --- a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixpluginconfigs.rs +++ b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixpluginconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/apisix-ingress-controller/apisix.apache.org/v2/apisixpluginconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixroutes.rs b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixroutes.rs index c84ee5a69..fa28e183b 100644 --- a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixroutes.rs +++ b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/apisix-ingress-controller/apisix.apache.org/v2/apisixroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixtlses.rs b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixtlses.rs index a8a2e057c..c52faac78 100644 --- a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixtlses.rs +++ b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixtlses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/apisix-ingress-controller/apisix.apache.org/v2/apisixtlses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixupstreams.rs b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixupstreams.rs index d90d4241e..8f90ddaa3 100644 --- a/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixupstreams.rs +++ b/kube-custom-resources-rs/src/apisix_apache_org/v2/apisixupstreams.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/apisix-ingress-controller/apisix.apache.org/v2/apisixupstreams.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apm_k8s_elastic_co/v1/apmservers.rs b/kube-custom-resources-rs/src/apm_k8s_elastic_co/v1/apmservers.rs index fb2a547e7..d7b663cdf 100644 --- a/kube-custom-resources-rs/src/apm_k8s_elastic_co/v1/apmservers.rs +++ b/kube-custom-resources-rs/src/apm_k8s_elastic_co/v1/apmservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/apm.k8s.elastic.co/v1/apmservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apm_k8s_elastic_co/v1beta1/apmservers.rs b/kube-custom-resources-rs/src/apm_k8s_elastic_co/v1beta1/apmservers.rs index 51381d8ff..18ebebe7d 100644 --- a/kube-custom-resources-rs/src/apm_k8s_elastic_co/v1beta1/apmservers.rs +++ b/kube-custom-resources-rs/src/apm_k8s_elastic_co/v1beta1/apmservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/apm.k8s.elastic.co/v1beta1/apmservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitobuilds.rs b/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitobuilds.rs index 512930b34..8799ccd40 100644 --- a/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitobuilds.rs +++ b/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitobuilds.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kiegroup/kogito-operator/app.kiegroup.org/v1beta1/kogitobuilds.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitoinfras.rs b/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitoinfras.rs index 4816f780d..238028007 100644 --- a/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitoinfras.rs +++ b/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitoinfras.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kiegroup/kogito-operator/app.kiegroup.org/v1beta1/kogitoinfras.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitoruntimes.rs b/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitoruntimes.rs index 6264f7001..47350708d 100644 --- a/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitoruntimes.rs +++ b/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitoruntimes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kiegroup/kogito-operator/app.kiegroup.org/v1beta1/kogitoruntimes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitosupportingservices.rs b/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitosupportingservices.rs index 02c4072c8..caed14322 100644 --- a/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitosupportingservices.rs +++ b/kube-custom-resources-rs/src/app_kiegroup_org/v1beta1/kogitosupportingservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kiegroup/kogito-operator/app.kiegroup.org/v1beta1/kogitosupportingservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_lightbend_com/v1alpha1/akkaclusters.rs b/kube-custom-resources-rs/src/app_lightbend_com/v1alpha1/akkaclusters.rs index 6ff6b5149..b181ab93b 100644 --- a/kube-custom-resources-rs/src/app_lightbend_com/v1alpha1/akkaclusters.rs +++ b/kube-custom-resources-rs/src/app_lightbend_com/v1alpha1/akkaclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/lightbend/akka-cluster-operator/app.lightbend.com/v1alpha1/akkaclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_redislabs_com/v1/redisenterpriseclusters.rs b/kube-custom-resources-rs/src/app_redislabs_com/v1/redisenterpriseclusters.rs index c701f5f8b..88862db40 100644 --- a/kube-custom-resources-rs/src/app_redislabs_com/v1/redisenterpriseclusters.rs +++ b/kube-custom-resources-rs/src/app_redislabs_com/v1/redisenterpriseclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/RedisLabs/redis-enterprise-k8s-docs/app.redislabs.com/v1/redisenterpriseclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseactiveactivedatabases.rs b/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseactiveactivedatabases.rs index 955707fe6..f636d5fd2 100644 --- a/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseactiveactivedatabases.rs +++ b/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseactiveactivedatabases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/RedisLabs/redis-enterprise-k8s-docs/app.redislabs.com/v1alpha1/redisenterpriseactiveactivedatabases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseclusters.rs b/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseclusters.rs index 49f1eea93..806803c7d 100644 --- a/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseclusters.rs +++ b/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/RedisLabs/redis-enterprise-k8s-docs/app.redislabs.com/v1alpha1/redisenterpriseclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterprisedatabases.rs b/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterprisedatabases.rs index 54ae0e13f..21d6c805f 100644 --- a/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterprisedatabases.rs +++ b/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterprisedatabases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/RedisLabs/redis-enterprise-k8s-docs/app.redislabs.com/v1alpha1/redisenterprisedatabases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseremoteclusters.rs b/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseremoteclusters.rs index 7301294b7..1c087b4d5 100644 --- a/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseremoteclusters.rs +++ b/kube-custom-resources-rs/src/app_redislabs_com/v1alpha1/redisenterpriseremoteclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/RedisLabs/redis-enterprise-k8s-docs/app.redislabs.com/v1alpha1/redisenterpriseremoteclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/agentpools.rs b/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/agentpools.rs index e9cd1bce0..66a7325ea 100644 --- a/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/agentpools.rs +++ b/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/agentpools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hashicorp/terraform-cloud-operator/app.terraform.io/v1alpha2/agentpools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/modules.rs b/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/modules.rs index 2132606c1..392500d61 100644 --- a/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/modules.rs +++ b/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/modules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hashicorp/terraform-cloud-operator/app.terraform.io/v1alpha2/modules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/workspaces.rs b/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/workspaces.rs index 76988c67a..11a9c11e9 100644 --- a/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/workspaces.rs +++ b/kube-custom-resources-rs/src/app_terraform_io/v1alpha2/workspaces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hashicorp/terraform-cloud-operator/app.terraform.io/v1alpha2/workspaces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/accesslogpolicies.rs b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/accesslogpolicies.rs index 2cbcc924d..793b35625 100644 --- a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/accesslogpolicies.rs +++ b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/accesslogpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-application-networking-k8s/application-networking.k8s.aws/v1alpha1/accesslogpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/iamauthpolicies.rs b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/iamauthpolicies.rs index 21b0ab131..0f721767b 100644 --- a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/iamauthpolicies.rs +++ b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/iamauthpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-application-networking-k8s/application-networking.k8s.aws/v1alpha1/iamauthpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/serviceexports.rs b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/serviceexports.rs index f66de8b96..39e5cd16c 100644 --- a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/serviceexports.rs +++ b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/serviceexports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-application-networking-k8s/application-networking.k8s.aws/v1alpha1/serviceexports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/serviceimports.rs b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/serviceimports.rs index 742376915..812b9a1f4 100644 --- a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/serviceimports.rs +++ b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/serviceimports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-application-networking-k8s/application-networking.k8s.aws/v1alpha1/serviceimports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/targetgrouppolicies.rs b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/targetgrouppolicies.rs index 2b6b07e1d..a8705218f 100644 --- a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/targetgrouppolicies.rs +++ b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/targetgrouppolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-application-networking-k8s/application-networking.k8s.aws/v1alpha1/targetgrouppolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/vpcassociationpolicies.rs b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/vpcassociationpolicies.rs index 5cb8ee66f..6a7c9051d 100644 --- a/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/vpcassociationpolicies.rs +++ b/kube-custom-resources-rs/src/application_networking_k8s_aws/v1alpha1/vpcassociationpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-application-networking-k8s/application-networking.k8s.aws/v1alpha1/vpcassociationpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/applicationautoscaling_services_k8s_aws/v1alpha1/scalabletargets.rs b/kube-custom-resources-rs/src/applicationautoscaling_services_k8s_aws/v1alpha1/scalabletargets.rs index 2650713dd..a4c1726ac 100644 --- a/kube-custom-resources-rs/src/applicationautoscaling_services_k8s_aws/v1alpha1/scalabletargets.rs +++ b/kube-custom-resources-rs/src/applicationautoscaling_services_k8s_aws/v1alpha1/scalabletargets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/applicationautoscaling-controller/applicationautoscaling.services.k8s.aws/v1alpha1/scalabletargets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/applicationautoscaling_services_k8s_aws/v1alpha1/scalingpolicies.rs b/kube-custom-resources-rs/src/applicationautoscaling_services_k8s_aws/v1alpha1/scalingpolicies.rs index 7989ffd05..e50b370cd 100644 --- a/kube-custom-resources-rs/src/applicationautoscaling_services_k8s_aws/v1alpha1/scalingpolicies.rs +++ b/kube-custom-resources-rs/src/applicationautoscaling_services_k8s_aws/v1alpha1/scalingpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/applicationautoscaling-controller/applicationautoscaling.services.k8s.aws/v1alpha1/scalingpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/backendgroups.rs b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/backendgroups.rs index 09c09dff1..0f75215cb 100644 --- a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/backendgroups.rs +++ b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/backendgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-app-mesh-controller-for-k8/appmesh.k8s.aws/v1beta2/backendgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/gatewayroutes.rs b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/gatewayroutes.rs index e42c2e3ae..a87ae9eb6 100644 --- a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/gatewayroutes.rs +++ b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/gatewayroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-app-mesh-controller-for-k8/appmesh.k8s.aws/v1beta2/gatewayroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/meshes.rs b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/meshes.rs index eea26ac77..9b5c4d949 100644 --- a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/meshes.rs +++ b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/meshes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-app-mesh-controller-for-k8/appmesh.k8s.aws/v1beta2/meshes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualgateways.rs b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualgateways.rs index 30c3e6953..54689f968 100644 --- a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualgateways.rs +++ b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualgateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-app-mesh-controller-for-k8/appmesh.k8s.aws/v1beta2/virtualgateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualnodes.rs b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualnodes.rs index c98ed2d29..4279b1d36 100644 --- a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualnodes.rs +++ b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualnodes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-app-mesh-controller-for-k8/appmesh.k8s.aws/v1beta2/virtualnodes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualrouters.rs b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualrouters.rs index 4dc1f3035..d4697a091 100644 --- a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualrouters.rs +++ b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualrouters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-app-mesh-controller-for-k8/appmesh.k8s.aws/v1beta2/virtualrouters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualservices.rs b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualservices.rs index 8a7ba598b..9ee63bac4 100644 --- a/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualservices.rs +++ b/kube-custom-resources-rs/src/appmesh_k8s_aws/v1beta2/virtualservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/aws-app-mesh-controller-for-k8/appmesh.k8s.aws/v1beta2/virtualservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appprotect_f5_com/v1beta1/aplogconfs.rs b/kube-custom-resources-rs/src/appprotect_f5_com/v1beta1/aplogconfs.rs index d0237c63c..477fb73fe 100644 --- a/kube-custom-resources-rs/src/appprotect_f5_com/v1beta1/aplogconfs.rs +++ b/kube-custom-resources-rs/src/appprotect_f5_com/v1beta1/aplogconfs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/appprotect.f5.com/v1beta1/aplogconfs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appprotect_f5_com/v1beta1/apusersigs.rs b/kube-custom-resources-rs/src/appprotect_f5_com/v1beta1/apusersigs.rs index 5eee807c5..eeb23e07b 100644 --- a/kube-custom-resources-rs/src/appprotect_f5_com/v1beta1/apusersigs.rs +++ b/kube-custom-resources-rs/src/appprotect_f5_com/v1beta1/apusersigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/appprotect.f5.com/v1beta1/apusersigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/apdoslogconfs.rs b/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/apdoslogconfs.rs index b2c5c772e..8d4023a4d 100644 --- a/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/apdoslogconfs.rs +++ b/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/apdoslogconfs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/appprotectdos.f5.com/v1beta1/apdoslogconfs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/apdospolicies.rs b/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/apdospolicies.rs index 524fe7900..be39ef72d 100644 --- a/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/apdospolicies.rs +++ b/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/apdospolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/appprotectdos.f5.com/v1beta1/apdospolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/dosprotectedresources.rs b/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/dosprotectedresources.rs index 86f9ea7a5..374343782 100644 --- a/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/dosprotectedresources.rs +++ b/kube-custom-resources-rs/src/appprotectdos_f5_com/v1beta1/dosprotectedresources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/appprotectdos.f5.com/v1beta1/dosprotectedresources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apicasts.rs b/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apicasts.rs index cd99608ee..af07376aa 100644 --- a/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apicasts.rs +++ b/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apicasts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/apicast-operator/apps.3scale.net/v1alpha1/apicasts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagerbackups.rs b/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagerbackups.rs index b99553744..3788385f5 100644 --- a/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagerbackups.rs +++ b/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagerbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/apps.3scale.net/v1alpha1/apimanagerbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagerrestores.rs b/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagerrestores.rs index 098a23d94..1155a8dd0 100644 --- a/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagerrestores.rs +++ b/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagerrestores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/apps.3scale.net/v1alpha1/apimanagerrestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagers.rs b/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagers.rs index a6a062d17..60472719e 100644 --- a/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagers.rs +++ b/kube-custom-resources-rs/src/apps_3scale_net/v1alpha1/apimanagers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/apps.3scale.net/v1alpha1/apimanagers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/bases.rs b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/bases.rs index 689cc4d37..73d9928c2 100644 --- a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/bases.rs +++ b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/bases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/bases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/descriptions.rs b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/descriptions.rs index b30dd27ad..164dd333a 100644 --- a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/descriptions.rs +++ b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/descriptions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/descriptions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/feedinventories.rs b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/feedinventories.rs index 8c14047b2..ccde02294 100644 --- a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/feedinventories.rs +++ b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/feedinventories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/feedinventories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -268,23 +268,23 @@ pub struct FeedInventoryFeedsReplicaRequirementsAffinityPodAffinityPreferredDuri pub label_selector: Option, /// MatchLabelKeys is a set of pod label keys to select which pods will /// be taken into consideration. The keys are used to lookup values from the - /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)` /// to select the group of existing pods which pods will be taken into consideration /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming /// pod labels will be ignored. The default value is empty. - /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. - /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. + /// Also, matchLabelKeys cannot be set when labelSelector isn't set. /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will /// be taken into consideration. The keys are used to lookup values from the - /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)` /// to select the group of existing pods which pods will be taken into consideration /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming /// pod labels will be ignored. The default value is empty. - /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. - /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. + /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, @@ -389,23 +389,23 @@ pub struct FeedInventoryFeedsReplicaRequirementsAffinityPodAffinityRequiredDurin pub label_selector: Option, /// MatchLabelKeys is a set of pod label keys to select which pods will /// be taken into consideration. The keys are used to lookup values from the - /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)` /// to select the group of existing pods which pods will be taken into consideration /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming /// pod labels will be ignored. The default value is empty. - /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. - /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. + /// Also, matchLabelKeys cannot be set when labelSelector isn't set. /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will /// be taken into consideration. The keys are used to lookup values from the - /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)` /// to select the group of existing pods which pods will be taken into consideration /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming /// pod labels will be ignored. The default value is empty. - /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. - /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. + /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, @@ -541,23 +541,23 @@ pub struct FeedInventoryFeedsReplicaRequirementsAffinityPodAntiAffinityPreferred pub label_selector: Option, /// MatchLabelKeys is a set of pod label keys to select which pods will /// be taken into consideration. The keys are used to lookup values from the - /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)` /// to select the group of existing pods which pods will be taken into consideration /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming /// pod labels will be ignored. The default value is empty. - /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. - /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. + /// Also, matchLabelKeys cannot be set when labelSelector isn't set. /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will /// be taken into consideration. The keys are used to lookup values from the - /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)` /// to select the group of existing pods which pods will be taken into consideration /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming /// pod labels will be ignored. The default value is empty. - /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. - /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. + /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, @@ -662,23 +662,23 @@ pub struct FeedInventoryFeedsReplicaRequirementsAffinityPodAntiAffinityRequiredD pub label_selector: Option, /// MatchLabelKeys is a set of pod label keys to select which pods will /// be taken into consideration. The keys are used to lookup values from the - /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)` /// to select the group of existing pods which pods will be taken into consideration /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming /// pod labels will be ignored. The default value is empty. - /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. - /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. + /// Also, matchLabelKeys cannot be set when labelSelector isn't set. /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will /// be taken into consideration. The keys are used to lookup values from the - /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)` /// to select the group of existing pods which pods will be taken into consideration /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming /// pod labels will be ignored. The default value is empty. - /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. - /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. + /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, diff --git a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/globalizations.rs b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/globalizations.rs index eee5319f3..2b8dc05a0 100644 --- a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/globalizations.rs +++ b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/globalizations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/globalizations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/helmcharts.rs b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/helmcharts.rs index 71a86059c..abecdd1b3 100644 --- a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/helmcharts.rs +++ b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/helmcharts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/helmcharts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/helmreleases.rs b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/helmreleases.rs index d9394e41b..3ff864c48 100644 --- a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/helmreleases.rs +++ b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/helmreleases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/helmreleases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/localizations.rs b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/localizations.rs index 236738550..391f0c56f 100644 --- a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/localizations.rs +++ b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/localizations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/localizations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/manifests.rs b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/manifests.rs index aa2fdecce..55859ddfc 100644 --- a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/manifests.rs +++ b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/manifests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/manifests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/subscriptions.rs b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/subscriptions.rs index 04c7f3015..6d23eab9e 100644 --- a/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/subscriptions.rs +++ b/kube-custom-resources-rs/src/apps_clusternet_io/v1alpha1/subscriptions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/apps.clusternet.io/v1alpha1/subscriptions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -243,9 +243,6 @@ pub struct SubscriptionDividingSchedulingDynamicDividingTopologySpreadConstraint /// In this situation, new pod with the same labelSelector cannot be scheduled, /// because computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones, /// it will violate MaxSkew. - /// - /// - /// This is a beta field and requires the MinDomainsInPodTopologySpread feature gate to be enabled (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "minDomains")] pub min_domains: Option, /// NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector diff --git a/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxbrokers.rs b/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxbrokers.rs index 36ae9cd7b..8b39c4fb1 100644 --- a/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxbrokers.rs +++ b/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxbrokers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emqx/emqx-operator/apps.emqx.io/v1beta3/emqxbrokers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxenterprises.rs b/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxenterprises.rs index 10cefbd44..8bb2b612e 100644 --- a/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxenterprises.rs +++ b/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxenterprises.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emqx/emqx-operator/apps.emqx.io/v1beta3/emqxenterprises.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxplugins.rs b/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxplugins.rs index 2be5a98c7..c56ba784c 100644 --- a/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxplugins.rs +++ b/kube-custom-resources-rs/src/apps_emqx_io/v1beta3/emqxplugins.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emqx/emqx-operator/apps.emqx.io/v1beta3/emqxplugins.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxbrokers.rs b/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxbrokers.rs index d4568af19..82beb0bbf 100644 --- a/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxbrokers.rs +++ b/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxbrokers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emqx/emqx-operator/apps.emqx.io/v1beta4/emqxbrokers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxenterprises.rs b/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxenterprises.rs index a1b41cedc..374149c0e 100644 --- a/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxenterprises.rs +++ b/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxenterprises.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emqx/emqx-operator/apps.emqx.io/v1beta4/emqxenterprises.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxplugins.rs b/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxplugins.rs index d050a9cbf..c9d00ba5d 100644 --- a/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxplugins.rs +++ b/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/emqxplugins.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emqx/emqx-operator/apps.emqx.io/v1beta4/emqxplugins.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/rebalances.rs b/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/rebalances.rs index 8f0b80223..93f3895ab 100644 --- a/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/rebalances.rs +++ b/kube-custom-resources-rs/src/apps_emqx_io/v1beta4/rebalances.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emqx/emqx-operator/apps.emqx.io/v1beta4/rebalances.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_emqx_io/v2alpha1/emqxes.rs b/kube-custom-resources-rs/src/apps_emqx_io/v2alpha1/emqxes.rs index 2fbf8edc8..960692d40 100644 --- a/kube-custom-resources-rs/src/apps_emqx_io/v2alpha1/emqxes.rs +++ b/kube-custom-resources-rs/src/apps_emqx_io/v2alpha1/emqxes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emqx/emqx-operator/apps.emqx.io/v2alpha1/emqxes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_emqx_io/v2beta1/emqxes.rs b/kube-custom-resources-rs/src/apps_emqx_io/v2beta1/emqxes.rs index a4e7da06e..741b59a8e 100644 --- a/kube-custom-resources-rs/src/apps_emqx_io/v2beta1/emqxes.rs +++ b/kube-custom-resources-rs/src/apps_emqx_io/v2beta1/emqxes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emqx/emqx-operator/apps.emqx.io/v2beta1/emqxes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_emqx_io/v2beta1/rebalances.rs b/kube-custom-resources-rs/src/apps_emqx_io/v2beta1/rebalances.rs index b69e3d879..975ad4b83 100644 --- a/kube-custom-resources-rs/src/apps_emqx_io/v2beta1/rebalances.rs +++ b/kube-custom-resources-rs/src/apps_emqx_io/v2beta1/rebalances.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emqx/emqx-operator/apps.emqx.io/v2beta1/rebalances.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_gitlab_com/v1beta1/gitlabs.rs b/kube-custom-resources-rs/src/apps_gitlab_com/v1beta1/gitlabs.rs index 4a8ea338c..f356033fd 100644 --- a/kube-custom-resources-rs/src/apps_gitlab_com/v1beta1/gitlabs.rs +++ b/kube-custom-resources-rs/src/apps_gitlab_com/v1beta1/gitlabs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gitlab-org/cloud-native/gitlab-operator/apps.gitlab.com/v1beta1/gitlabs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_gitlab_com/v1beta2/runners.rs b/kube-custom-resources-rs/src/apps_gitlab_com/v1beta2/runners.rs index 02643ddf4..a5107cbb3 100644 --- a/kube-custom-resources-rs/src/apps_gitlab_com/v1beta2/runners.rs +++ b/kube-custom-resources-rs/src/apps_gitlab_com/v1beta2/runners.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gitlab-org/gl-openshift/gitlab-runner-operator/apps.gitlab.com/v1beta2/runners.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/backuppolicytemplates.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/backuppolicytemplates.rs index 1588ab766..403db5b35 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/backuppolicytemplates.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/backuppolicytemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/backuppolicytemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusterdefinitions.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusterdefinitions.rs index 3eb1953df..2b47aa59a 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusterdefinitions.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusterdefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusterdefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -44,16 +44,17 @@ pub struct ClusterDefinitionTopologies { /// ClusterTopologyComponent defines a Component within a ClusterTopology. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterDefinitionTopologiesComponents { - /// Specifies the name or prefix of the ComponentDefinition custom resource(CR) that - /// defines the Component's characteristics and behavior. + /// Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition + /// custom resource (CR) that defines the Component's characteristics and behavior. /// /// - /// When a prefix is used, the system selects the ComponentDefinition CR with the latest version that matches the prefix. + /// The system selects the ComponentDefinition CR with the latest version that matches the pattern. /// This approach allows: /// /// /// 1. Precise selection by providing the exact name of a ComponentDefinition CR. - /// 2. Flexible and automatic selection of the most up-to-date ComponentDefinition CR by specifying a prefix. + /// 2. Flexible and automatic selection of the most up-to-date ComponentDefinition CR + /// by specifying a name prefix or regular expression pattern. /// /// /// Once set, this field cannot be updated. diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusters.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusters.rs index 71533fae5..7c6717185 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusters.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -155,6 +155,7 @@ pub struct ClusterSpec { /// - `DoNotTerminate`: Prevents deletion of the Cluster. This policy ensures that all resources remain intact. /// - `Halt`: Deletes Cluster resources like Pods and Services but retains Persistent Volume Claims (PVCs), /// allowing for data preservation while stopping other operations. + /// Warning: Halt policy is deprecated in 0.9.1 and will have same meaning as DoNotTerminate. /// - `Delete`: Extends the `Halt` policy by also removing PVCs, leading to a thorough cleanup while /// removing all persistent data. /// - `WipeOut`: An aggressive policy that deletes all Cluster resources, including volume snapshots and @@ -361,8 +362,10 @@ pub struct ClusterComponentSpecs { /// Specifies Annotations to override or add for underlying Pods. #[serde(default, skip_serializing_if = "Option::is_none")] pub annotations: Option>, - /// References the name of a ComponentDefinition object. - /// The ComponentDefinition specifies the behavior and characteristics of the Component. + /// Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition + /// custom resource (CR) that defines the Component's characteristics and behavior. + /// + /// /// If both `componentDefRef` and `componentDef` are provided, /// the `componentDef` will take precedence over `componentDefRef`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "componentDef")] @@ -406,7 +409,7 @@ pub struct ClusterComponentSpecs { /// For example, if the `componentDefinition.spec.logConfigs` defines LogConfig entries with /// names "slow_query_log" and "error_log", /// you can enable the collection of these logs by including their names in the `enabledLogs` array: - /// ```yaml + /// ```text /// enabledLogs: /// - slow_query_log /// - error_log @@ -552,7 +555,7 @@ pub struct ClusterComponentSpecs { /// /// /// Example: - /// ```yaml + /// ```text /// serviceRefs: /// - name: "redis-sentinel" /// serviceDescriptor: @@ -8177,8 +8180,10 @@ pub struct ClusterShardingSpecsTemplate { /// Specifies Annotations to override or add for underlying Pods. #[serde(default, skip_serializing_if = "Option::is_none")] pub annotations: Option>, - /// References the name of a ComponentDefinition object. - /// The ComponentDefinition specifies the behavior and characteristics of the Component. + /// Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition + /// custom resource (CR) that defines the Component's characteristics and behavior. + /// + /// /// If both `componentDefRef` and `componentDef` are provided, /// the `componentDef` will take precedence over `componentDefRef`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "componentDef")] @@ -8222,7 +8227,7 @@ pub struct ClusterShardingSpecsTemplate { /// For example, if the `componentDefinition.spec.logConfigs` defines LogConfig entries with /// names "slow_query_log" and "error_log", /// you can enable the collection of these logs by including their names in the `enabledLogs` array: - /// ```yaml + /// ```text /// enabledLogs: /// - slow_query_log /// - error_log @@ -8368,7 +8373,7 @@ pub struct ClusterShardingSpecsTemplate { /// /// /// Example: - /// ```yaml + /// ```text /// serviceRefs: /// - name: "redis-sentinel" /// serviceDescriptor: diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusterversions.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusterversions.rs index 4842f3c4c..e97342a96 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusterversions.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/clusterversions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/clusterversions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentclassdefinitions.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentclassdefinitions.rs index 72e93382f..d57298ca8 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentclassdefinitions.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentclassdefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentclassdefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentdefinitions.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentdefinitions.rs index a480731bd..e7bbcd0db 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentdefinitions.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentdefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentdefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -119,7 +119,7 @@ pub struct ComponentDefinitionSpec { /// Examples: /// /// - /// ```yaml + /// ```text /// logConfigs: /// - filePathPattern: /data/mysql/log/mysqld-error.log /// name: error @@ -470,6 +470,9 @@ pub struct ComponentDefinitionConfigs { /// Use `injectEnvTo` instead. #[serde(default, skip_serializing_if = "Option::is_none", rename = "asEnvFrom")] pub as_env_from: Option>, + /// Whether to store the final rendered parameters as a secret. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "asSecret")] + pub as_secret: Option, /// Specifies the name of the referenced configuration constraints object. #[serde(default, skip_serializing_if = "Option::is_none", rename = "constraintRef")] pub constraint_ref: Option, @@ -556,8 +559,8 @@ pub struct ComponentDefinitionConfigs { /// Refers to the volume name of PodTemplate. The configuration file produced through the configuration /// template will be mounted to the corresponding volume. Must be a DNS_LABEL name. /// The volume name must be defined in podSpec.containers[*].volumeMounts. - #[serde(rename = "volumeName")] - pub volume_name: String, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeName")] + pub volume_name: Option, } /// Specifies the secondary rendered config spec for pod-specific customization. @@ -785,7 +788,7 @@ pub struct ComponentDefinitionLifecycleActions { /// For example, to add a new OBServer to an OceanBase Cluster in 'zone1', the following command may be used: /// /// - /// ```yaml + /// ```text /// command: /// - bash /// - -c @@ -824,7 +827,7 @@ pub struct ComponentDefinitionLifecycleActions { /// For example, to remove an OBServer from an OceanBase Cluster in 'zone1', the following command can be executed: /// /// - /// ```yaml + /// ```text /// command: /// - bash /// - -c @@ -1810,7 +1813,7 @@ pub struct ComponentDefinitionLifecycleActionsDataLoadRetryPolicy { /// For example, to add a new OBServer to an OceanBase Cluster in 'zone1', the following command may be used: /// /// -/// ```yaml +/// ```text /// command: /// - bash /// - -c @@ -2102,7 +2105,7 @@ pub struct ComponentDefinitionLifecycleActionsMemberJoinRetryPolicy { /// For example, to remove an OBServer from an OceanBase Cluster in 'zone1', the following command can be executed: /// /// -/// ```yaml +/// ```text /// command: /// - bash /// - -c @@ -10956,8 +10959,8 @@ pub struct ComponentDefinitionScripts { /// Refers to the volume name of PodTemplate. The configuration file produced through the configuration /// template will be mounted to the corresponding volume. Must be a DNS_LABEL name. /// The volume name must be defined in podSpec.containers[*].volumeMounts. - #[serde(rename = "volumeName")] - pub volume_name: String, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeName")] + pub volume_name: Option, } /// ServiceRefDeclaration represents a reference to a service that can be either provided by a KubeBlocks Cluster @@ -11049,7 +11052,7 @@ pub struct ComponentDefinitionServices { /// Example usage: /// /// - /// ```yaml + /// ```text /// name: my-service /// serviceName: my-service /// podService: true @@ -11600,7 +11603,10 @@ pub enum ComponentDefinitionVarsValueFromClusterVarRefNamespace { /// Selects a defined var of a Component. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ComponentDefinitionVarsValueFromComponentVarRef { - /// CompDef specifies the definition used by the component that the referent object resident in. + /// Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition + /// custom resource (CR) used by the component that the referent object resident in. + /// + /// /// If not specified, the component itself will be used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "compDef")] pub comp_def: Option, @@ -11782,7 +11788,10 @@ pub struct ComponentDefinitionVarsValueFromConfigMapKeyRef { /// Selects a defined var of a Credential (SystemAccount). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ComponentDefinitionVarsValueFromCredentialVarRef { - /// CompDef specifies the definition used by the component that the referent object resident in. + /// Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition + /// custom resource (CR) used by the component that the referent object resident in. + /// + /// /// If not specified, the component itself will be used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "compDef")] pub comp_def: Option, @@ -11871,7 +11880,10 @@ pub enum ComponentDefinitionVarsValueFromCredentialVarRefUsername { /// Selects a defined var of host-network resources. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ComponentDefinitionVarsValueFromHostNetworkVarRef { - /// CompDef specifies the definition used by the component that the referent object resident in. + /// Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition + /// custom resource (CR) used by the component that the referent object resident in. + /// + /// /// If not specified, the component itself will be used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "compDef")] pub comp_def: Option, @@ -11985,7 +11997,10 @@ pub struct ComponentDefinitionVarsValueFromSecretKeyRef { /// Selects a defined var of a ServiceRef. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ComponentDefinitionVarsValueFromServiceRefVarRef { - /// CompDef specifies the definition used by the component that the referent object resident in. + /// Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition + /// custom resource (CR) used by the component that the referent object resident in. + /// + /// /// If not specified, the component itself will be used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "compDef")] pub comp_def: Option, @@ -12104,7 +12119,10 @@ pub enum ComponentDefinitionVarsValueFromServiceRefVarRefUsername { /// Selects a defined var of a Service. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ComponentDefinitionVarsValueFromServiceVarRef { - /// CompDef specifies the definition used by the component that the referent object resident in. + /// Specifies the exact name, name prefix, or regular expression pattern for matching the name of the ComponentDefinition + /// custom resource (CR) used by the component that the referent object resident in. + /// + /// /// If not specified, the component itself will be used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "compDef")] pub comp_def: Option, diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/components.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/components.rs index 1d8242fdf..8e0391360 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/components.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/components.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/components.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -59,7 +59,7 @@ pub struct ComponentSpec { /// For example, if the `componentDefinition.spec.logConfigs` defines LogConfig entries with /// names "slow_query_log" and "error_log", /// you can enable the collection of these logs by including their names in the `enabledLogs` array: - /// ```yaml + /// ```text /// enabledLogs: /// - slow_query_log /// - error_log @@ -176,7 +176,7 @@ pub struct ComponentSpec { /// /// /// Example: - /// ```yaml + /// ```text /// serviceRefs: /// - name: "redis-sentinel" /// serviceDescriptor: @@ -4404,7 +4404,7 @@ pub struct ComponentServices { /// Example usage: /// /// - /// ```yaml + /// ```text /// name: my-service /// serviceName: my-service /// podService: true diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentversions.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentversions.rs index c4fe74586..4b935ba88 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentversions.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/componentversions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/componentversions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -29,7 +29,7 @@ pub struct ComponentVersionSpec { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ComponentVersionCompatibilityRules { /// CompDefs specifies names for the component definitions associated with this ComponentVersion. - /// Each name in the list can represent an exact name, or a name prefix. + /// Each name in the list can represent an exact name, a name prefix, or a regular expression pattern. /// /// /// For example: @@ -37,6 +37,7 @@ pub struct ComponentVersionCompatibilityRules { /// /// - "mysql-8.0.30-v1alpha1": Matches the exact name "mysql-8.0.30-v1alpha1" /// - "mysql-8.0.30": Matches all names starting with "mysql-8.0.30" + /// - "^mysql-8.0.\d{1,2}$": Matches all names starting with "mysql-8.0." followed by one or two digits. #[serde(rename = "compDefs")] pub comp_defs: Vec, /// Releases is a list of identifiers for the releases. diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/configconstraints.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/configconstraints.rs index b839860fe..df1390509 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/configconstraints.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/configconstraints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/configconstraints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -66,7 +66,7 @@ pub struct ConfigConstraintSpec { /// /// /// Example: - /// ``` + /// ```text /// formatterConfig: /// format: ini /// iniConfig: @@ -96,7 +96,7 @@ pub struct ConfigConstraintSpec { /// /// /// Example: - /// ```yaml + /// ```text /// reloadOptions: /// tplScriptTrigger: /// namespace: kb-system @@ -266,7 +266,7 @@ pub struct ConfigConstraintDownwardApiOptionsScriptConfig { /// /// /// Example: -/// ``` +/// ```text /// formatterConfig: /// format: ini /// iniConfig: @@ -302,7 +302,7 @@ pub struct ConfigConstraintFormatterConfig { /// /// /// Example: -/// ``` +/// ```text /// formatterConfig: /// format: ini /// iniConfig: @@ -358,7 +358,7 @@ pub struct ConfigConstraintFormatterConfigIniConfig { /// /// /// Example: -/// ```yaml +/// ```text /// reloadOptions: /// tplScriptTrigger: /// namespace: kb-system @@ -401,7 +401,7 @@ pub struct ConfigConstraintReloadOptionsShellTrigger { /// Example template: /// /// - /// ```yaml + /// ```text /// batchParamsFormatterTemplate: |- /// {{- range $pKey, $pValue := $ }} /// {{ printf "%s:%s" $pKey $pValue }} @@ -410,7 +410,7 @@ pub struct ConfigConstraintReloadOptionsShellTrigger { /// /// /// This example generates batch input data in a key:value format, sorted by keys. - /// ``` + /// ```text /// key1:value1 /// key2:value2 /// key3:value3 @@ -418,7 +418,7 @@ pub struct ConfigConstraintReloadOptionsShellTrigger { /// /// /// If not specified, the default format is key=value, sorted by keys, for each updated parameter. - /// ``` + /// ```text /// key1=value1 /// key2=value2 /// key3=value3 @@ -504,7 +504,7 @@ pub struct ConfigConstraintReloadOptionsShellTriggerToolsSetupToolConfigs { /// /// /// Examples: - /// ```yaml + /// ```text /// toolsSetup:: /// mountPoint: /kb_tools /// toolConfigs: @@ -515,7 +515,7 @@ pub struct ConfigConstraintReloadOptionsShellTriggerToolsSetupToolConfigs { /// /// /// generated containers: - /// ```yaml + /// ```text /// initContainers: /// - name: install-config-manager-tool /// image: apecloud/kubeblocks-tools:${version} @@ -738,7 +738,7 @@ pub struct ConfigConstraintToolsImageSpecToolConfigs { /// /// /// Examples: - /// ```yaml + /// ```text /// toolsSetup:: /// mountPoint: /kb_tools /// toolConfigs: @@ -749,7 +749,7 @@ pub struct ConfigConstraintToolsImageSpecToolConfigs { /// /// /// generated containers: - /// ```yaml + /// ```text /// initContainers: /// - name: install-config-manager-tool /// image: apecloud/kubeblocks-tools:${version} diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/configurations.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/configurations.rs index f8a88e138..0bc86d761 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/configurations.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/configurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/configurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -138,6 +138,9 @@ pub struct ConfigurationConfigItemDetailsConfigSpec { /// Use `injectEnvTo` instead. #[serde(default, skip_serializing_if = "Option::is_none", rename = "asEnvFrom")] pub as_env_from: Option>, + /// Whether to store the final rendered parameters as a secret. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "asSecret")] + pub as_secret: Option, /// Specifies the name of the referenced configuration constraints object. #[serde(default, skip_serializing_if = "Option::is_none", rename = "constraintRef")] pub constraint_ref: Option, @@ -224,8 +227,8 @@ pub struct ConfigurationConfigItemDetailsConfigSpec { /// Refers to the volume name of PodTemplate. The configuration file produced through the configuration /// template will be mounted to the corresponding volume. Must be a DNS_LABEL name. /// The volume name must be defined in podSpec.containers[*].volumeMounts. - #[serde(rename = "volumeName")] - pub volume_name: String, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeName")] + pub volume_name: Option, } /// Specifies the secondary rendered config spec for pod-specific customization. diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/opsdefinitions.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/opsdefinitions.rs index bf7ebfbb7..ff7f6aacf 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/opsdefinitions.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/opsdefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/opsdefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -37,7 +37,7 @@ pub struct OpsDefinitionSpec { /// Specifies the preconditions that must be met to run the actions for the operation. /// if set, it will check the condition before the Component runs this operation. /// Example: - /// ```yaml + /// ```text /// preConditions: /// - rule: /// expression: '{{ eq .component.status.phase "Running" }}' diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/opsrequests.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/opsrequests.rs index d35e78608..02f7f18fb 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/opsrequests.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/opsrequests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/opsrequests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/servicedescriptors.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/servicedescriptors.rs index d4ed13f33..109091db7 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/servicedescriptors.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1alpha1/servicedescriptors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1alpha1/servicedescriptors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1beta1/configconstraints.rs b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1beta1/configconstraints.rs index 6eb32e822..a17613965 100644 --- a/kube-custom-resources-rs/src/apps_kubeblocks_io/v1beta1/configconstraints.rs +++ b/kube-custom-resources-rs/src/apps_kubeblocks_io/v1beta1/configconstraints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/apps.kubeblocks.io/v1beta1/configconstraints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -48,7 +48,7 @@ pub struct ConfigConstraintSpec { /// /// /// Example: - /// ``` + /// ```text /// fileFormatConfig: /// format: ini /// iniConfig: @@ -93,7 +93,7 @@ pub struct ConfigConstraintSpec { /// /// /// Example: - /// ```yaml + /// ```text /// dynamicReloadAction: /// tplScriptTrigger: /// namespace: kb-system @@ -211,7 +211,7 @@ pub struct ConfigConstraintDownwardApiChangeTriggeredActionsScriptConfig { /// /// /// Example: -/// ``` +/// ```text /// fileFormatConfig: /// format: ini /// iniConfig: @@ -247,7 +247,7 @@ pub struct ConfigConstraintFileFormatConfig { /// /// /// Example: -/// ``` +/// ```text /// fileFormatConfig: /// format: ini /// iniConfig: @@ -330,7 +330,7 @@ pub struct ConfigConstraintParametersSchema { /// /// /// Example: -/// ```yaml +/// ```text /// dynamicReloadAction: /// tplScriptTrigger: /// namespace: kb-system @@ -384,7 +384,7 @@ pub struct ConfigConstraintReloadActionShellTrigger { /// Example template: /// /// - /// ```yaml + /// ```text /// batchParamsFormatterTemplate: |- /// {{- range $pKey, $pValue := $ }} /// {{ printf "%s:%s" $pKey $pValue }} @@ -393,7 +393,7 @@ pub struct ConfigConstraintReloadActionShellTrigger { /// /// /// This example generates batch input data in a key:value format, sorted by keys. - /// ``` + /// ```text /// key1:value1 /// key2:value2 /// key3:value3 @@ -401,7 +401,7 @@ pub struct ConfigConstraintReloadActionShellTrigger { /// /// /// If not specified, the default format is key=value, sorted by keys, for each updated parameter. - /// ``` + /// ```text /// key1=value1 /// key2=value2 /// key3=value3 @@ -487,7 +487,7 @@ pub struct ConfigConstraintReloadActionShellTriggerToolsSetupToolConfigs { /// /// /// Examples: - /// ```yaml + /// ```text /// toolsSetup:: /// mountPoint: /kb_tools /// toolConfigs: @@ -498,7 +498,7 @@ pub struct ConfigConstraintReloadActionShellTriggerToolsSetupToolConfigs { /// /// /// generated containers: - /// ```yaml + /// ```text /// initContainers: /// - name: install-config-manager-tool /// image: apecloud/kubeblocks-tools:${version} diff --git a/kube-custom-resources-rs/src/apps_kubedl_io/v1alpha1/crons.rs b/kube-custom-resources-rs/src/apps_kubedl_io/v1alpha1/crons.rs index 72916352a..7e1dce6f8 100644 --- a/kube-custom-resources-rs/src/apps_kubedl_io/v1alpha1/crons.rs +++ b/kube-custom-resources-rs/src/apps_kubedl_io/v1alpha1/crons.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/apps.kubedl.io/v1alpha1/crons.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -43,31 +44,13 @@ pub struct CronTemplate { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CronStatus { #[serde(default, skip_serializing_if = "Option::is_none")] - pub active: Option>, + pub active: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub history: Option>, #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastScheduleTime")] pub last_schedule_time: Option, } -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct CronStatusActive { - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CronStatusHistory { #[serde(default, skip_serializing_if = "Option::is_none")] diff --git a/kube-custom-resources-rs/src/apps_kubeedge_io/v1alpha1/nodegroups.rs b/kube-custom-resources-rs/src/apps_kubeedge_io/v1alpha1/nodegroups.rs index 85db7b330..4bb405efa 100644 --- a/kube-custom-resources-rs/src/apps_kubeedge_io/v1alpha1/nodegroups.rs +++ b/kube-custom-resources-rs/src/apps_kubeedge_io/v1alpha1/nodegroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/apps.kubeedge.io/v1alpha1/nodegroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_m88i_io/v1alpha1/nexus.rs b/kube-custom-resources-rs/src/apps_m88i_io/v1alpha1/nexus.rs index 13b905032..437912877 100644 --- a/kube-custom-resources-rs/src/apps_m88i_io/v1alpha1/nexus.rs +++ b/kube-custom-resources-rs/src/apps_m88i_io/v1alpha1/nexus.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/m88i/nexus-operator/apps.m88i.io/v1alpha1/nexus.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/apps_redhat_com/v1alpha1/clusterimpairments.rs b/kube-custom-resources-rs/src/apps_redhat_com/v1alpha1/clusterimpairments.rs index e5d97bf87..745d9be70 100644 --- a/kube-custom-resources-rs/src/apps_redhat_com/v1alpha1/clusterimpairments.rs +++ b/kube-custom-resources-rs/src/apps_redhat_com/v1alpha1/clusterimpairments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/redhat-performance/cluster-impairment-operator/apps.redhat.com/v1alpha1/clusterimpairments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/aquastarboards.rs b/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/aquastarboards.rs index cf2e0d074..d03681e1a 100644 --- a/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/aquastarboards.rs +++ b/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/aquastarboards.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aquasecurity/aqua-operator/aquasecurity.github.io/v1alpha1/aquastarboards.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/clusterconfigauditreports.rs b/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/clusterconfigauditreports.rs index 2b63d7a64..2233f4748 100644 --- a/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/clusterconfigauditreports.rs +++ b/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/clusterconfigauditreports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aquasecurity/aqua-operator/aquasecurity.github.io/v1alpha1/clusterconfigauditreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/configauditreports.rs b/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/configauditreports.rs index 87a9a391b..1d5e06d2e 100644 --- a/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/configauditreports.rs +++ b/kube-custom-resources-rs/src/aquasecurity_github_io/v1alpha1/configauditreports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aquasecurity/aqua-operator/aquasecurity.github.io/v1alpha1/configauditreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/applications.rs b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/applications.rs index 37972ecc6..122d20335 100644 --- a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/applications.rs +++ b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/applications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/applications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/appprojects.rs b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/appprojects.rs index a39018fc0..b41b0ae02 100644 --- a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/appprojects.rs +++ b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/appprojects.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/appprojects.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/argocdexports.rs b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/argocdexports.rs index a2080d36b..fd1ebafd5 100644 --- a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/argocdexports.rs +++ b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/argocdexports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/argocdexports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/argocds.rs b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/argocds.rs index 1bd690d0b..a91df47d3 100644 --- a/kube-custom-resources-rs/src/argoproj_io/v1alpha1/argocds.rs +++ b/kube-custom-resources-rs/src/argoproj_io/v1alpha1/argocds.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1alpha1/argocds.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/argoproj_io/v1beta1/argocds.rs b/kube-custom-resources-rs/src/argoproj_io/v1beta1/argocds.rs index 14c98e368..a1fb84614 100644 --- a/kube-custom-resources-rs/src/argoproj_io/v1beta1/argocds.rs +++ b/kube-custom-resources-rs/src/argoproj_io/v1beta1/argocds.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/argoproj-labs/argocd-operator/argoproj.io/v1beta1/argocds.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/asdb_aerospike_com/v1/aerospikeclusters.rs b/kube-custom-resources-rs/src/asdb_aerospike_com/v1/aerospikeclusters.rs index 575f0422f..b8fd84425 100644 --- a/kube-custom-resources-rs/src/asdb_aerospike_com/v1/aerospikeclusters.rs +++ b/kube-custom-resources-rs/src/asdb_aerospike_com/v1/aerospikeclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aerospike/aerospike-kubernetes-operator/asdb.aerospike.com/v1/aerospikeclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -32,15 +32,21 @@ pub struct AerospikeClusterSpec { /// Disable the PodDisruptionBudget creation for the Aerospike cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "disablePDB")] pub disable_pdb: Option, - /// EnableDynamicConfigUpdate enables dynamic config update flow of the operator. If enabled, operator will try to update the Aerospike config dynamically. In case of inconsistent state during dynamic config update, operator falls back to rolling restart. + /// EnableDynamicConfigUpdate enables dynamic config update flow of the operator. + /// If enabled, operator will try to update the Aerospike config dynamically. + /// In case of inconsistent state during dynamic config update, operator falls back to rolling restart. #[serde(default, skip_serializing_if = "Option::is_none", rename = "enableDynamicConfigUpdate")] pub enable_dynamic_config_update: Option, /// Aerospike server image pub image: String, - /// K8sNodeBlockList is a list of Kubernetes nodes which are not used for Aerospike pods. Pods are not scheduled on these nodes. Pods are migrated from these nodes if already present. This is useful for the maintenance of Kubernetes nodes. + /// K8sNodeBlockList is a list of Kubernetes nodes which are not used for Aerospike pods. Pods are not scheduled on + /// these nodes. Pods are migrated from these nodes if already present. This is useful for the maintenance of + /// Kubernetes nodes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "k8sNodeBlockList")] pub k8s_node_block_list: Option>, - /// MaxUnavailable is the percentage/number of pods that can be allowed to go down or unavailable before application disruption. This value is used to create PodDisruptionBudget. Defaults to 1. Refer Aerospike documentation for more details. + /// MaxUnavailable is the percentage/number of pods that can be allowed to go down or unavailable before application + /// disruption. This value is used to create PodDisruptionBudget. Defaults to 1. + /// Refer Aerospike documentation for more details. #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxUnavailable")] pub max_unavailable: Option, /// Operations is a list of on-demand operations to be performed on the Aerospike cluster. @@ -55,13 +61,15 @@ pub struct AerospikeClusterSpec { /// Specify additional configuration for the Aerospike pods #[serde(default, skip_serializing_if = "Option::is_none", rename = "podSpec")] pub pod_spec: Option, - /// RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration + /// RackConfig Configures the operator to deploy rack aware Aerospike cluster. + /// Pods will be deployed in given racks based on given configuration #[serde(default, skip_serializing_if = "Option::is_none", rename = "rackConfig")] pub rack_config: Option, /// RosterNodeBlockList is a list of blocked nodeIDs from roster in a strong-consistency setup #[serde(default, skip_serializing_if = "Option::is_none", rename = "rosterNodeBlockList")] pub roster_node_block_list: Option>, - /// SeedsFinderServices creates additional Kubernetes service that allow clients to discover Aerospike cluster nodes. + /// SeedsFinderServices creates additional Kubernetes service that allow + /// clients to discover Aerospike cluster nodes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seedsFinderServices")] pub seeds_finder_services: Option, /// Aerospike cluster size @@ -119,7 +127,8 @@ pub struct AerospikeClusterAerospikeAccessControlUsers { pub name: String, /// Roles is the list of roles granted to the user. pub roles: Vec, - /// SecretName has secret info created by user. User needs to create this secret from password literal. eg: kubectl create secret generic dev-db-secret --from-literal=password='password' + /// SecretName has secret info created by user. User needs to create this secret from password literal. + /// eg: kubectl create secret generic dev-db-secret --from-literal=password='password' #[serde(rename = "secretName")] pub secret_name: String, } @@ -127,40 +136,78 @@ pub struct AerospikeClusterAerospikeAccessControlUsers { /// AerospikeNetworkPolicy specifies how clients and tools access the Aerospike cluster. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterAerospikeNetworkPolicy { - /// AccessType is the type of network address to use for Aerospike access address. Defaults to hostInternal. + /// AccessType is the type of network address to use for Aerospike access address. + /// Defaults to hostInternal. #[serde(default, skip_serializing_if = "Option::is_none")] pub access: Option, - /// AlternateAccessType is the type of network address to use for Aerospike alternate access address. Defaults to hostExternal. + /// AlternateAccessType is the type of network address to use for Aerospike alternate access address. + /// Defaults to hostExternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "alternateAccess")] pub alternate_access: Option, - /// CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' access type. + /// CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' access type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "customAccessNetworkNames")] pub custom_access_network_names: Option>, - /// CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' alternateAccess type + /// CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike + /// alternate access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' alternateAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customAlternateAccessNetworkNames")] pub custom_alternate_access_network_names: Option>, - /// CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' fabric type + /// CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' fabric type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customFabricNetworkNames")] pub custom_fabric_network_names: Option>, - /// CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAccess type + /// CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' tlsAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSAccessNetworkNames")] pub custom_tls_access_network_names: Option>, - /// CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAlternateAccess type + /// CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS + /// alternate access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' tlsAlternateAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSAlternateAccessNetworkNames")] pub custom_tls_alternate_access_network_names: Option>, - /// CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsFabric type + /// CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network + /// interfaces to the pod. + /// Required with 'customInterface' tlsFabric type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSFabricNetworkNames")] pub custom_tls_fabric_network_names: Option>, - /// FabricType is the type of network address to use for Aerospike fabric address. Defaults is empty meaning all interfaces 'any'. + /// FabricType is the type of network address to use for Aerospike fabric address. + /// Defaults is empty meaning all interfaces 'any'. #[serde(default, skip_serializing_if = "Option::is_none")] pub fabric: Option, - /// TLSAccessType is the type of network address to use for Aerospike TLS access address. Defaults to hostInternal. + /// TLSAccessType is the type of network address to use for Aerospike TLS access address. + /// Defaults to hostInternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsAccess")] pub tls_access: Option, - /// TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. Defaults to hostExternal. + /// TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. + /// Defaults to hostExternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsAlternateAccess")] pub tls_alternate_access: Option, - /// TLSFabricType is the type of network address to use for Aerospike TLS fabric address. Defaults is empty meaning all interfaces 'any'. + /// TLSFabricType is the type of network address to use for Aerospike TLS fabric address. + /// Defaults is empty meaning all interfaces 'any'. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsFabric")] pub tls_fabric: Option, } @@ -257,7 +304,9 @@ pub enum AerospikeClusterOperationsKind { /// Certificates to connect to Aerospike. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterOperatorClientCert { - /// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem. + /// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike + /// cluster. + /// All paths are on operator's filesystem. #[serde(default, skip_serializing_if = "Option::is_none", rename = "certPathInOperator")] pub cert_path_in_operator: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretCertSource")] @@ -267,7 +316,9 @@ pub struct AerospikeClusterOperatorClientCert { pub tls_client_name: Option, } -/// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem. +/// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike +/// cluster. +/// All paths are on operator's filesystem. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterOperatorClientCertCertPathInOperator { #[serde(default, skip_serializing_if = "Option::is_none", rename = "caCertsPath")] @@ -305,28 +356,35 @@ pub struct AerospikeClusterOperatorClientCertSecretCertSourceCaCertsSource { /// Specify additional configuration for the Aerospike pods #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpec { - /// AerospikeContainerSpec configures the aerospike-server container created by the operator. + /// AerospikeContainerSpec configures the aerospike-server container + /// created by the operator. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeContainer")] pub aerospike_container: Option, - /// AerospikeInitContainerSpec configures the aerospike-init container created by the operator. + /// AerospikeInitContainerSpec configures the aerospike-init container + /// created by the operator. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeInitContainer")] pub aerospike_init_container: Option, /// Affinity rules for pod placement. #[serde(default, skip_serializing_if = "Option::is_none")] pub affinity: Option, - /// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None` + /// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. + /// This is required field when dnsPolicy is set to `None` #[serde(default, skip_serializing_if = "Option::is_none", rename = "dnsConfig")] pub dns_config: Option, - /// DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet + /// DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. + /// If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet #[serde(default, skip_serializing_if = "Option::is_none", rename = "dnsPolicy")] pub dns_policy: Option, /// Effective value of the DNSPolicy #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveDNSPolicy")] pub effective_dns_policy: Option, - /// HostNetwork enables host networking for the pod. To enable hostNetwork multiPodPerHost must be false. + /// HostNetwork enables host networking for the pod. + /// To enable hostNetwork multiPodPerHost must be false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostNetwork")] pub host_network: Option, - /// ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod + /// ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of + /// the images used by this PodSpec. + /// More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] pub image_pull_secrets: Option>, /// InitContainers to add to the pods. @@ -335,14 +393,26 @@ pub struct AerospikeClusterPodSpec { /// MetaData to add to the pod. #[serde(default, skip_serializing_if = "Option::is_none")] pub metadata: Option, - /// If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod if aerospikeNetworkPolicy defined has one of the network types: 'hostInternal', 'hostExternal', 'configuredIP' NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. - /// If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user. + /// If set true then multiple pods can be created per Kubernetes Node. + /// This will create a NodePort service for each Pod if aerospikeNetworkPolicy defined + /// has one of the network types: 'hostInternal', 'hostExternal', 'configuredIP' + /// NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , + /// and any traffic that is sent to this port is forwarded to the service. + /// Here service picks a random port in range (30000-32767), so these port should be open. + /// + /// + /// If set false then only single pod can be created per Kubernetes Node. + /// This will create Pods using hostPort setting. + /// The container port will be exposed to the external network at :, + /// where the hostIP is the IP address of the Kubernetes Node where the container is running and + /// the hostPort is the port requested by the user. #[serde(default, skip_serializing_if = "Option::is_none", rename = "multiPodPerHost")] pub multi_pod_per_host: Option, /// NodeSelector constraints for this pod. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeSelector")] pub node_selector: Option>, - /// SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field. + /// SecurityContext holds pod-level security attributes and common container settings. + /// Optional: Defaults to empty. See type description for default values of each field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, /// Sidecars to add to the pod. @@ -353,10 +423,14 @@ pub struct AerospikeClusterPodSpec { pub tolerations: Option>, } -/// AerospikeContainerSpec configures the aerospike-server container created by the operator. +/// AerospikeContainerSpec configures the aerospike-server container +/// created by the operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainer { - /// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. + /// Define resources requests and limits for Aerospike Server Container. + /// Please contact aerospike for proper sizing exercise + /// Only Memory and Cpu resources can be given + /// Resources.Limits should be more than Resources.Requests. #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, /// SecurityContext that will be added to aerospike-server container created by operator. @@ -364,18 +438,31 @@ pub struct AerospikeClusterPodSpecAerospikeContainer { pub security_context: Option, } -/// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. +/// Define resources requests and limits for Aerospike Server Container. +/// Please contact aerospike for proper sizing exercise +/// Only Memory and Cpu resources can be given +/// Resources.Limits should be more than Resources.Requests. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -383,49 +470,93 @@ pub struct AerospikeClusterPodSpecAerospikeContainerResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } /// SecurityContext that will be added to aerospike-server container created by operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextCapabilities { /// Added capabilities @@ -436,7 +567,11 @@ pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextCapabilities pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -453,42 +588,74 @@ pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextSeLinuxOption pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// AerospikeInitContainerSpec configures the aerospike-init container created by the operator. +/// AerospikeInitContainerSpec configures the aerospike-init container +/// created by the operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainer { - /// ImageRegistry is the name of image registry for aerospike-init container image ImageRegistry, e.g. docker.io, redhat.access.com + /// ImageNameAndTag is the name:tag of aerospike-init container image + #[serde(default, skip_serializing_if = "Option::is_none", rename = "imageNameAndTag")] + pub image_name_and_tag: Option, + /// ImageRegistry is the name of image registry for aerospike-init container image + /// ImageRegistry, e.g. docker.io, redhat.access.com #[serde(default, skip_serializing_if = "Option::is_none", rename = "imageRegistry")] pub image_registry: Option, - /// Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. + /// ImageRegistryNamespace is the name of namespace in registry for aerospike-init container image + #[serde(default, skip_serializing_if = "Option::is_none", rename = "imageRegistryNamespace")] + pub image_registry_namespace: Option, + /// Define resources requests and limits for Aerospike init Container. + /// Only Memory and Cpu resources can be given + /// Resources.Limits should be more than Resources.Requests. #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, /// SecurityContext that will be added to aerospike-init container created by operator. @@ -496,18 +663,30 @@ pub struct AerospikeClusterPodSpecAerospikeInitContainer { pub security_context: Option, } -/// Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. +/// Define resources requests and limits for Aerospike init Container. +/// Only Memory and Cpu resources can be given +/// Resources.Limits should be more than Resources.Requests. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -515,49 +694,93 @@ pub struct AerospikeClusterPodSpecAerospikeInitContainerResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } /// SecurityContext that will be added to aerospike-init container created by operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextCapabilities { /// Added capabilities @@ -568,7 +791,11 @@ pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextCapabilit pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -585,31 +812,53 @@ pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextSeLinuxOp pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } @@ -631,15 +880,28 @@ pub struct AerospikeClusterPodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -659,31 +921,47 @@ pub struct AerospikeClusterPodSpecAffinityNodeAffinityPreferredDuringSchedulingI pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -691,7 +969,9 @@ pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIg pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -702,26 +982,38 @@ pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIg pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -729,10 +1021,24 @@ pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIg /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -743,144 +1049,244 @@ pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIg /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -888,10 +1294,24 @@ pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgn /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -902,158 +1322,266 @@ pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringScheduli /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None` +/// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. +/// This is required field when dnsPolicy is set to `None` #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecDnsConfig { - /// A list of DNS name server IP addresses. This will be appended to the base nameservers generated from DNSPolicy. Duplicated nameservers will be removed. + /// A list of DNS name server IP addresses. + /// This will be appended to the base nameservers generated from DNSPolicy. + /// Duplicated nameservers will be removed. #[serde(default, skip_serializing_if = "Option::is_none")] pub nameservers: Option>, - /// A list of DNS resolver options. This will be merged with the base options generated from DNSPolicy. Duplicated entries will be removed. Resolution options given in Options will override those that appear in the base DNSPolicy. + /// A list of DNS resolver options. + /// This will be merged with the base options generated from DNSPolicy. + /// Duplicated entries will be removed. Resolution options given in Options + /// will override those that appear in the base DNSPolicy. #[serde(default, skip_serializing_if = "Option::is_none")] pub options: Option>, - /// A list of DNS search domains for host-name lookup. This will be appended to the base search paths generated from DNSPolicy. Duplicated search paths will be removed. + /// A list of DNS search domains for host-name lookup. + /// This will be appended to the base search paths generated from DNSPolicy. + /// Duplicated search paths will be removed. #[serde(default, skip_serializing_if = "Option::is_none")] pub searches: Option>, } @@ -1068,10 +1596,13 @@ pub struct AerospikeClusterPodSpecDnsConfigOptions { pub value: Option, } -/// LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. +/// LocalObjectReference contains enough information to let you locate the +/// referenced object inside the same namespace. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecImagePullSecrets { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -1079,75 +1610,166 @@ pub struct AerospikeClusterPodSpecImagePullSecrets { /// A single application container that you want to run within a pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainers { - /// Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Arguments to the entrypoint. + /// The container image's CMD is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub args: Option>, - /// Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Entrypoint array. Not executed within a shell. + /// The container image's ENTRYPOINT is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, - /// List of environment variables to set in the container. Cannot be updated. + /// List of environment variables to set in the container. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub env: Option>, - /// List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. + /// List of sources to populate environment variables in the container. + /// The keys defined within a source must be a C_IDENTIFIER. All invalid keys + /// will be reported as an event when the container is starting. When a key exists in multiple + /// sources, the value associated with the last source will take precedence. + /// Values defined by an Env with a duplicate key will take precedence. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")] pub env_from: Option>, - /// Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets. + /// Container image name. + /// More info: https://kubernetes.io/docs/concepts/containers/images + /// This field is optional to allow higher level config management to default or override + /// container images in workload controllers like Deployments and StatefulSets. #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, - /// Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images + /// Image pull policy. + /// One of Always, Never, IfNotPresent. + /// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")] pub image_pull_policy: Option, - /// Actions that the management system should take in response to container lifecycle events. Cannot be updated. + /// Actions that the management system should take in response to container lifecycle events. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub lifecycle: Option, - /// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container liveness. + /// Container will be restarted if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "livenessProbe")] pub liveness_probe: Option, - /// Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated. + /// Name of the container specified as a DNS_LABEL. + /// Each container in a pod must have a unique name (DNS_LABEL). + /// Cannot be updated. pub name: String, - /// List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated. + /// List of ports to expose from the container. Not specifying a port here + /// DOES NOT prevent that port from being exposed. Any port which is + /// listening on the default "0.0.0.0" address inside a container will be + /// accessible from the network. + /// Modifying this array with strategic merge patch may corrupt the data. + /// For more information See https://github.com/kubernetes/kubernetes/issues/108255. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container service readiness. + /// Container will be removed from service endpoints if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, /// Resources resize policy for the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] pub resize_policy: Option>, - /// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Compute Resources required by this container. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, - /// RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is "Always". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as "Always" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy "Always" will be shut down. This lifecycle differs from normal init containers and is often referred to as a "sidecar" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed. + /// RestartPolicy defines the restart behavior of individual containers in a pod. + /// This field may only be set for init containers, and the only allowed value is "Always". + /// For non-init containers or when this field is not specified, + /// the restart behavior is defined by the Pod's restart policy and the container type. + /// Setting the RestartPolicy as "Always" for the init container will have the following effect: + /// this init container will be continually restarted on + /// exit until all regular containers have terminated. Once all regular + /// containers have completed, all init containers with restartPolicy "Always" + /// will be shut down. This lifecycle differs from normal init containers and + /// is often referred to as a "sidecar" container. Although this init + /// container still starts in the init container sequence, it does not wait + /// for the container to complete before proceeding to the next init + /// container. Instead, the next init container starts immediately after this + /// init container is started, or after any startupProbe has successfully + /// completed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, - /// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ + /// SecurityContext defines the security options the container should be run with. + /// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. + /// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, - /// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// StartupProbe indicates that the Pod has successfully initialized. + /// If specified, no other probes are executed until this completes successfully. + /// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. + /// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, + /// when it might take a long time to load data or warm a cache, than during steady-state operation. + /// This cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] pub startup_probe: Option, - /// Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. + /// Whether this container should allocate a buffer for stdin in the container runtime. If this + /// is not set, reads from stdin in the container will always result in EOF. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub stdin: Option, - /// Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false + /// Whether the container runtime should close the stdin channel after it has been opened by + /// a single attach. When stdin is true the stdin stream will remain open across multiple attach + /// sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the + /// first client attaches to stdin, and then remains open and accepts data until the client disconnects, + /// at which time stdin is closed and remains closed until the container is restarted. If this + /// flag is false, a container processes that reads from stdin will never receive an EOF. + /// Default is false #[serde(default, skip_serializing_if = "Option::is_none", rename = "stdinOnce")] pub stdin_once: Option, - /// Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. + /// Optional: Path at which the file to which the container's termination message + /// will be written is mounted into the container's filesystem. + /// Message written is intended to be brief final status, such as an assertion failure message. + /// Will be truncated by the node if greater than 4096 bytes. The total message length across + /// all containers will be limited to 12kb. + /// Defaults to /dev/termination-log. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePath")] pub termination_message_path: Option, - /// Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. + /// Indicate how the termination message should be populated. File will use the contents of + /// terminationMessagePath to populate the container status message on both success and failure. + /// FallbackToLogsOnError will use the last chunk of container log output if the termination + /// message file is empty and the container exited with an error. + /// The log output is limited to 2048 bytes or 80 lines, whichever is smaller. + /// Defaults to File. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePolicy")] pub termination_message_policy: Option, - /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. + /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub tty: Option, /// volumeDevices is the list of block devices to be used by the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeDevices")] pub volume_devices: Option>, - /// Pod volumes to mount into the container's filesystem. Cannot be updated. + /// Pod volumes to mount into the container's filesystem. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")] pub volume_mounts: Option>, - /// Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated. + /// Container's working directory. + /// If not specified, the container runtime's default will be used, which + /// might be configured in the container image. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "workingDir")] pub working_dir: Option, } @@ -1157,7 +1779,15 @@ pub struct AerospikeClusterPodSpecInitContainers { pub struct AerospikeClusterPodSpecInitContainersEnv { /// Name of the environment variable. Must be a C_IDENTIFIER. pub name: String, - /// Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". + /// Variable references $(VAR_NAME) are expanded + /// using the previously defined environment variables in the container and + /// any service environment variables. If a variable cannot be resolved, + /// the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + /// "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + /// Escaped references will never be expanded, regardless of whether the variable + /// exists or not. + /// Defaults to "". #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, /// Source for the environment variable's value. Cannot be used if value is not empty. @@ -1171,10 +1801,12 @@ pub struct AerospikeClusterPodSpecInitContainersEnvValueFrom { /// Selects a key of a ConfigMap. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapKeyRef")] pub config_map_key_ref: Option, - /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + /// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")] pub field_ref: Option, - /// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + /// Selects a resource of the container: only resources limits and requests + /// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")] pub resource_field_ref: Option, /// Selects a key of a secret in the pod's namespace @@ -1187,7 +1819,9 @@ pub struct AerospikeClusterPodSpecInitContainersEnvValueFrom { pub struct AerospikeClusterPodSpecInitContainersEnvValueFromConfigMapKeyRef { /// The key to select. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -1195,7 +1829,8 @@ pub struct AerospikeClusterPodSpecInitContainersEnvValueFromConfigMapKeyRef { pub optional: Option, } -/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. +/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, +/// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersEnvValueFromFieldRef { /// Version of the schema the FieldPath is written in terms of, defaults to "v1". @@ -1206,7 +1841,8 @@ pub struct AerospikeClusterPodSpecInitContainersEnvValueFromFieldRef { pub field_path: String, } -/// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. +/// Selects a resource of the container: only resources limits and requests +/// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersEnvValueFromResourceFieldRef { /// Container name: required for volumes, optional for env vars @@ -1224,7 +1860,9 @@ pub struct AerospikeClusterPodSpecInitContainersEnvValueFromResourceFieldRef { pub struct AerospikeClusterPodSpecInitContainersEnvValueFromSecretKeyRef { /// The key of the secret to select from. Must be a valid secret key. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -1249,7 +1887,9 @@ pub struct AerospikeClusterPodSpecInitContainersEnvFrom { /// The ConfigMap to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersEnvFromConfigMapRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -1260,7 +1900,9 @@ pub struct AerospikeClusterPodSpecInitContainersEnvFromConfigMapRef { /// The Secret to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersEnvFromSecretRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -1268,18 +1910,33 @@ pub struct AerospikeClusterPodSpecInitContainersEnvFromSecretRef { pub optional: Option, } -/// Actions that the management system should take in response to container lifecycle events. Cannot be updated. +/// Actions that the management system should take in response to container lifecycle events. +/// Cannot be updated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecycle { - /// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PostStart is called immediately after a container is created. If the handler fails, + /// the container is terminated and restarted according to its restart policy. + /// Other management of the container blocks until the hook completes. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "postStart")] pub post_start: Option, - /// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PreStop is called immediately before a container is terminated due to an + /// API request or management event such as liveness/startup probe failure, + /// preemption, resource contention, etc. The handler is not called if the + /// container crashes or exits. The Pod's termination grace period countdown begins before the + /// PreStop hook is executed. Regardless of the outcome of the handler, the + /// container will eventually terminate within the Pod's termination grace + /// period (unless delayed by finalizers). Other management of the container blocks until the hook completes + /// or until the termination grace period is reached. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "preStop")] pub pre_stop: Option, } -/// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PostStart is called immediately after a container is created. If the handler fails, +/// the container is terminated and restarted according to its restart policy. +/// Other management of the container blocks until the hook completes. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStart { /// Exec specifies the action to take. @@ -1291,7 +1948,9 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStart { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -1299,7 +1958,11 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStart { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -1307,7 +1970,8 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -1316,9 +1980,12 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -1326,7 +1993,8 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -1339,17 +2007,29 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PreStop is called immediately before a container is terminated due to an +/// API request or management event such as liveness/startup probe failure, +/// preemption, resource contention, etc. The handler is not called if the +/// container crashes or exits. The Pod's termination grace period countdown begins before the +/// PreStop hook is executed. Regardless of the outcome of the handler, the +/// container will eventually terminate within the Pod's termination grace +/// period (unless delayed by finalizers). Other management of the container blocks until the hook completes +/// or until the termination grace period is reached. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStop { /// Exec specifies the action to take. @@ -1361,7 +2041,9 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStop { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -1369,7 +2051,11 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStop { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -1377,7 +2063,8 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -1386,9 +2073,12 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -1396,7 +2086,8 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -1409,23 +2100,31 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container liveness. +/// Container will be restarted if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLivenessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -1434,22 +2133,36 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -1457,7 +2170,11 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLivenessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -1467,8 +2184,11 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbeExec { pub struct AerospikeClusterPodSpecInitContainersLivenessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -1476,7 +2196,8 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLivenessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -1485,9 +2206,12 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -1495,7 +2219,8 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLivenessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -1507,37 +2232,50 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerPort represents a network port in a single container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersPorts { - /// Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536. + /// Number of port to expose on the pod's IP address. + /// This must be a valid port number, 0 < x < 65536. #[serde(rename = "containerPort")] pub container_port: i32, /// What host IP to bind the external port to. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostIP")] pub host_ip: Option, - /// Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this. + /// Number of port to expose on the host. + /// If specified, this must be a valid port number, 0 < x < 65536. + /// If HostNetwork is specified, this must match ContainerPort. + /// Most containers do not need this. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPort")] pub host_port: Option, - /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. + /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each + /// named port in a pod must have a unique name. Name for the port that can be + /// referred to by services. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, - /// Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP". + /// Protocol for port. Must be UDP, TCP, or SCTP. + /// Defaults to "TCP". #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } -/// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container service readiness. +/// Container will be removed from service endpoints if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersReadinessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -1546,22 +2284,36 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -1569,7 +2321,11 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersReadinessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -1579,8 +2335,11 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbeExec { pub struct AerospikeClusterPodSpecInitContainersReadinessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -1588,7 +2347,8 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersReadinessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -1597,9 +2357,12 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -1607,7 +2370,8 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersReadinessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -1619,33 +2383,49 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerResizePolicy represents resource resize policy for the container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersResizePolicy { - /// Name of the resource to which this resource resize policy applies. Supported values: cpu, memory. + /// Name of the resource to which this resource resize policy applies. + /// Supported values: cpu, memory. #[serde(rename = "resourceName")] pub resource_name: String, - /// Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired. + /// Restart policy to apply when specified resource is resized. + /// If not specified, it defaults to NotRequired. #[serde(rename = "restartPolicy")] pub restart_policy: String, } -/// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ +/// Compute Resources required by this container. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -1653,49 +2433,95 @@ pub struct AerospikeClusterPodSpecInitContainersResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } -/// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ +/// SecurityContext defines the security options the container should be run with. +/// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. +/// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersSecurityContextCapabilities { /// Added capabilities @@ -1706,7 +2532,11 @@ pub struct AerospikeClusterPodSpecInitContainersSecurityContextCapabilities { pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -1723,42 +2553,71 @@ pub struct AerospikeClusterPodSpecInitContainersSecurityContextSeLinuxOptions { pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// StartupProbe indicates that the Pod has successfully initialized. +/// If specified, no other probes are executed until this completes successfully. +/// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. +/// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, +/// when it might take a long time to load data or warm a cache, than during steady-state operation. +/// This cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersStartupProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -1767,22 +2626,36 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -1790,7 +2663,11 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersStartupProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -1800,8 +2677,11 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbeExec { pub struct AerospikeClusterPodSpecInitContainersStartupProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -1809,7 +2689,8 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersStartupProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -1818,9 +2699,12 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -1828,7 +2712,8 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersStartupProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -1840,7 +2725,9 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } @@ -1857,21 +2744,30 @@ pub struct AerospikeClusterPodSpecInitContainersVolumeDevices { /// VolumeMount describes a mounting of a Volume within a container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersVolumeMounts { - /// Path within the container at which the volume should be mounted. Must not contain ':'. + /// Path within the container at which the volume should be mounted. Must + /// not contain ':'. #[serde(rename = "mountPath")] pub mount_path: String, - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, /// This must match the Name of a Volume. pub name: String, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -1887,44 +2783,97 @@ pub struct AerospikeClusterPodSpecMetadata { pub labels: Option>, } -/// SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field. +/// SecurityContext holds pod-level security attributes and common container settings. +/// Optional: Defaults to empty. See type description for default values of each field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSecurityContext { - /// A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: - /// 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- - /// If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows. + /// A special supplemental group that applies to all containers in a pod. + /// Some volume types allow the Kubelet to change the ownership of that volume + /// to be owned by the pod: + /// + /// + /// 1. The owning GID will be the FSGroup + /// 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) + /// 3. The permission bits are OR'd with rw-rw---- + /// + /// + /// If unset, the Kubelet will not modify the ownership and permissions of any volume. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] pub fs_group: Option, - /// fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. Note that this field cannot be set when spec.os.name is windows. + /// fsGroupChangePolicy defines behavior of changing ownership and permission of the volume + /// before being exposed inside Pod. This field will only apply to + /// volume types which support fsGroup based ownership(and permissions). + /// It will have no effect on ephemeral volume types such as: secret, configmaps + /// and emptydir. + /// Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupChangePolicy")] pub fs_group_change_policy: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence + /// for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence + /// for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to all containers. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in SecurityContext. If set in + /// both SecurityContext and PodSecurityContext, the value specified in SecurityContext + /// takes precedence for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by the containers in this pod. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// A list of groups applied to the first process run in each container, in addition to the container's primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows. + /// A list of groups applied to the first process run in each container, in addition + /// to the container's primary GID, the fsGroup (if specified), and group memberships + /// defined in the container image for the uid of the container process. If unspecified, + /// no additional groups are added to any container. Note that group memberships + /// defined in the container image for the uid of the container process are still effective, + /// even if they are not included in this list. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")] pub supplemental_groups: Option>, - /// Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows. + /// Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported + /// sysctls (by the container runtime) might fail to launch. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub sysctls: Option>, - /// The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options within a container's SecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to all containers. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in SecurityContext. If set in +/// both SecurityContext and PodSecurityContext, the value specified in SecurityContext +/// takes precedence for that container. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -1941,14 +2890,23 @@ pub struct AerospikeClusterPodSpecSecurityContextSeLinuxOptions { pub user: Option, } -/// The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by the containers in this pod. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } @@ -1962,19 +2920,30 @@ pub struct AerospikeClusterPodSpecSecurityContextSysctls { pub value: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options within a container's SecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } @@ -1982,75 +2951,166 @@ pub struct AerospikeClusterPodSpecSecurityContextWindowsOptions { /// A single application container that you want to run within a pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecars { - /// Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Arguments to the entrypoint. + /// The container image's CMD is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub args: Option>, - /// Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Entrypoint array. Not executed within a shell. + /// The container image's ENTRYPOINT is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, - /// List of environment variables to set in the container. Cannot be updated. + /// List of environment variables to set in the container. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub env: Option>, - /// List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. + /// List of sources to populate environment variables in the container. + /// The keys defined within a source must be a C_IDENTIFIER. All invalid keys + /// will be reported as an event when the container is starting. When a key exists in multiple + /// sources, the value associated with the last source will take precedence. + /// Values defined by an Env with a duplicate key will take precedence. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")] pub env_from: Option>, - /// Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets. + /// Container image name. + /// More info: https://kubernetes.io/docs/concepts/containers/images + /// This field is optional to allow higher level config management to default or override + /// container images in workload controllers like Deployments and StatefulSets. #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, - /// Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images + /// Image pull policy. + /// One of Always, Never, IfNotPresent. + /// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")] pub image_pull_policy: Option, - /// Actions that the management system should take in response to container lifecycle events. Cannot be updated. + /// Actions that the management system should take in response to container lifecycle events. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub lifecycle: Option, - /// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container liveness. + /// Container will be restarted if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "livenessProbe")] pub liveness_probe: Option, - /// Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated. + /// Name of the container specified as a DNS_LABEL. + /// Each container in a pod must have a unique name (DNS_LABEL). + /// Cannot be updated. pub name: String, - /// List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated. + /// List of ports to expose from the container. Not specifying a port here + /// DOES NOT prevent that port from being exposed. Any port which is + /// listening on the default "0.0.0.0" address inside a container will be + /// accessible from the network. + /// Modifying this array with strategic merge patch may corrupt the data. + /// For more information See https://github.com/kubernetes/kubernetes/issues/108255. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container service readiness. + /// Container will be removed from service endpoints if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, /// Resources resize policy for the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] pub resize_policy: Option>, - /// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Compute Resources required by this container. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, - /// RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is "Always". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as "Always" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy "Always" will be shut down. This lifecycle differs from normal init containers and is often referred to as a "sidecar" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed. + /// RestartPolicy defines the restart behavior of individual containers in a pod. + /// This field may only be set for init containers, and the only allowed value is "Always". + /// For non-init containers or when this field is not specified, + /// the restart behavior is defined by the Pod's restart policy and the container type. + /// Setting the RestartPolicy as "Always" for the init container will have the following effect: + /// this init container will be continually restarted on + /// exit until all regular containers have terminated. Once all regular + /// containers have completed, all init containers with restartPolicy "Always" + /// will be shut down. This lifecycle differs from normal init containers and + /// is often referred to as a "sidecar" container. Although this init + /// container still starts in the init container sequence, it does not wait + /// for the container to complete before proceeding to the next init + /// container. Instead, the next init container starts immediately after this + /// init container is started, or after any startupProbe has successfully + /// completed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, - /// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ + /// SecurityContext defines the security options the container should be run with. + /// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. + /// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, - /// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// StartupProbe indicates that the Pod has successfully initialized. + /// If specified, no other probes are executed until this completes successfully. + /// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. + /// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, + /// when it might take a long time to load data or warm a cache, than during steady-state operation. + /// This cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] pub startup_probe: Option, - /// Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. + /// Whether this container should allocate a buffer for stdin in the container runtime. If this + /// is not set, reads from stdin in the container will always result in EOF. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub stdin: Option, - /// Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false + /// Whether the container runtime should close the stdin channel after it has been opened by + /// a single attach. When stdin is true the stdin stream will remain open across multiple attach + /// sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the + /// first client attaches to stdin, and then remains open and accepts data until the client disconnects, + /// at which time stdin is closed and remains closed until the container is restarted. If this + /// flag is false, a container processes that reads from stdin will never receive an EOF. + /// Default is false #[serde(default, skip_serializing_if = "Option::is_none", rename = "stdinOnce")] pub stdin_once: Option, - /// Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. + /// Optional: Path at which the file to which the container's termination message + /// will be written is mounted into the container's filesystem. + /// Message written is intended to be brief final status, such as an assertion failure message. + /// Will be truncated by the node if greater than 4096 bytes. The total message length across + /// all containers will be limited to 12kb. + /// Defaults to /dev/termination-log. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePath")] pub termination_message_path: Option, - /// Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. + /// Indicate how the termination message should be populated. File will use the contents of + /// terminationMessagePath to populate the container status message on both success and failure. + /// FallbackToLogsOnError will use the last chunk of container log output if the termination + /// message file is empty and the container exited with an error. + /// The log output is limited to 2048 bytes or 80 lines, whichever is smaller. + /// Defaults to File. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePolicy")] pub termination_message_policy: Option, - /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. + /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub tty: Option, /// volumeDevices is the list of block devices to be used by the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeDevices")] pub volume_devices: Option>, - /// Pod volumes to mount into the container's filesystem. Cannot be updated. + /// Pod volumes to mount into the container's filesystem. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")] pub volume_mounts: Option>, - /// Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated. + /// Container's working directory. + /// If not specified, the container runtime's default will be used, which + /// might be configured in the container image. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "workingDir")] pub working_dir: Option, } @@ -2060,7 +3120,15 @@ pub struct AerospikeClusterPodSpecSidecars { pub struct AerospikeClusterPodSpecSidecarsEnv { /// Name of the environment variable. Must be a C_IDENTIFIER. pub name: String, - /// Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". + /// Variable references $(VAR_NAME) are expanded + /// using the previously defined environment variables in the container and + /// any service environment variables. If a variable cannot be resolved, + /// the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + /// "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + /// Escaped references will never be expanded, regardless of whether the variable + /// exists or not. + /// Defaults to "". #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, /// Source for the environment variable's value. Cannot be used if value is not empty. @@ -2074,10 +3142,12 @@ pub struct AerospikeClusterPodSpecSidecarsEnvValueFrom { /// Selects a key of a ConfigMap. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapKeyRef")] pub config_map_key_ref: Option, - /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + /// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")] pub field_ref: Option, - /// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + /// Selects a resource of the container: only resources limits and requests + /// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")] pub resource_field_ref: Option, /// Selects a key of a secret in the pod's namespace @@ -2090,7 +3160,9 @@ pub struct AerospikeClusterPodSpecSidecarsEnvValueFrom { pub struct AerospikeClusterPodSpecSidecarsEnvValueFromConfigMapKeyRef { /// The key to select. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -2098,7 +3170,8 @@ pub struct AerospikeClusterPodSpecSidecarsEnvValueFromConfigMapKeyRef { pub optional: Option, } -/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. +/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, +/// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsEnvValueFromFieldRef { /// Version of the schema the FieldPath is written in terms of, defaults to "v1". @@ -2109,7 +3182,8 @@ pub struct AerospikeClusterPodSpecSidecarsEnvValueFromFieldRef { pub field_path: String, } -/// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. +/// Selects a resource of the container: only resources limits and requests +/// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsEnvValueFromResourceFieldRef { /// Container name: required for volumes, optional for env vars @@ -2127,7 +3201,9 @@ pub struct AerospikeClusterPodSpecSidecarsEnvValueFromResourceFieldRef { pub struct AerospikeClusterPodSpecSidecarsEnvValueFromSecretKeyRef { /// The key of the secret to select from. Must be a valid secret key. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -2152,7 +3228,9 @@ pub struct AerospikeClusterPodSpecSidecarsEnvFrom { /// The ConfigMap to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsEnvFromConfigMapRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -2163,7 +3241,9 @@ pub struct AerospikeClusterPodSpecSidecarsEnvFromConfigMapRef { /// The Secret to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsEnvFromSecretRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -2171,18 +3251,33 @@ pub struct AerospikeClusterPodSpecSidecarsEnvFromSecretRef { pub optional: Option, } -/// Actions that the management system should take in response to container lifecycle events. Cannot be updated. +/// Actions that the management system should take in response to container lifecycle events. +/// Cannot be updated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecycle { - /// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PostStart is called immediately after a container is created. If the handler fails, + /// the container is terminated and restarted according to its restart policy. + /// Other management of the container blocks until the hook completes. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "postStart")] pub post_start: Option, - /// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PreStop is called immediately before a container is terminated due to an + /// API request or management event such as liveness/startup probe failure, + /// preemption, resource contention, etc. The handler is not called if the + /// container crashes or exits. The Pod's termination grace period countdown begins before the + /// PreStop hook is executed. Regardless of the outcome of the handler, the + /// container will eventually terminate within the Pod's termination grace + /// period (unless delayed by finalizers). Other management of the container blocks until the hook completes + /// or until the termination grace period is reached. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "preStop")] pub pre_stop: Option, } -/// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PostStart is called immediately after a container is created. If the handler fails, +/// the container is terminated and restarted according to its restart policy. +/// Other management of the container blocks until the hook completes. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStart { /// Exec specifies the action to take. @@ -2194,7 +3289,9 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStart { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -2202,7 +3299,11 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStart { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -2210,7 +3311,8 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -2219,9 +3321,12 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -2229,7 +3334,8 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -2242,17 +3348,29 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PreStop is called immediately before a container is terminated due to an +/// API request or management event such as liveness/startup probe failure, +/// preemption, resource contention, etc. The handler is not called if the +/// container crashes or exits. The Pod's termination grace period countdown begins before the +/// PreStop hook is executed. Regardless of the outcome of the handler, the +/// container will eventually terminate within the Pod's termination grace +/// period (unless delayed by finalizers). Other management of the container blocks until the hook completes +/// or until the termination grace period is reached. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStop { /// Exec specifies the action to take. @@ -2264,7 +3382,9 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStop { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -2272,7 +3392,11 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStop { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -2280,7 +3404,8 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -2289,9 +3414,12 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -2299,7 +3427,8 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -2312,23 +3441,31 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container liveness. +/// Container will be restarted if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLivenessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -2337,22 +3474,36 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -2360,7 +3511,11 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLivenessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -2370,8 +3525,11 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbeExec { pub struct AerospikeClusterPodSpecSidecarsLivenessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -2379,7 +3537,8 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLivenessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -2388,9 +3547,12 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -2398,7 +3560,8 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLivenessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -2410,37 +3573,50 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerPort represents a network port in a single container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsPorts { - /// Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536. + /// Number of port to expose on the pod's IP address. + /// This must be a valid port number, 0 < x < 65536. #[serde(rename = "containerPort")] pub container_port: i32, /// What host IP to bind the external port to. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostIP")] pub host_ip: Option, - /// Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this. + /// Number of port to expose on the host. + /// If specified, this must be a valid port number, 0 < x < 65536. + /// If HostNetwork is specified, this must match ContainerPort. + /// Most containers do not need this. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPort")] pub host_port: Option, - /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. + /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each + /// named port in a pod must have a unique name. Name for the port that can be + /// referred to by services. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, - /// Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP". + /// Protocol for port. Must be UDP, TCP, or SCTP. + /// Defaults to "TCP". #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } -/// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container service readiness. +/// Container will be removed from service endpoints if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsReadinessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -2449,22 +3625,36 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -2472,7 +3662,11 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsReadinessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -2482,8 +3676,11 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbeExec { pub struct AerospikeClusterPodSpecSidecarsReadinessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -2491,7 +3688,8 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsReadinessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -2500,9 +3698,12 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -2510,7 +3711,8 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsReadinessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -2522,33 +3724,49 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerResizePolicy represents resource resize policy for the container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsResizePolicy { - /// Name of the resource to which this resource resize policy applies. Supported values: cpu, memory. + /// Name of the resource to which this resource resize policy applies. + /// Supported values: cpu, memory. #[serde(rename = "resourceName")] pub resource_name: String, - /// Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired. + /// Restart policy to apply when specified resource is resized. + /// If not specified, it defaults to NotRequired. #[serde(rename = "restartPolicy")] pub restart_policy: String, } -/// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ +/// Compute Resources required by this container. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -2556,49 +3774,95 @@ pub struct AerospikeClusterPodSpecSidecarsResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } -/// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ +/// SecurityContext defines the security options the container should be run with. +/// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. +/// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsSecurityContextCapabilities { /// Added capabilities @@ -2609,7 +3873,11 @@ pub struct AerospikeClusterPodSpecSidecarsSecurityContextCapabilities { pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -2626,42 +3894,71 @@ pub struct AerospikeClusterPodSpecSidecarsSecurityContextSeLinuxOptions { pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// StartupProbe indicates that the Pod has successfully initialized. +/// If specified, no other probes are executed until this completes successfully. +/// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. +/// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, +/// when it might take a long time to load data or warm a cache, than during steady-state operation. +/// This cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsStartupProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -2670,22 +3967,36 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -2693,7 +4004,11 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsStartupProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -2703,8 +4018,11 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbeExec { pub struct AerospikeClusterPodSpecSidecarsStartupProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -2712,7 +4030,8 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsStartupProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -2721,9 +4040,12 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -2731,7 +4053,8 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsStartupProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -2743,7 +4066,9 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } @@ -2760,49 +4085,77 @@ pub struct AerospikeClusterPodSpecSidecarsVolumeDevices { /// VolumeMount describes a mounting of a Volume within a container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsVolumeMounts { - /// Path within the container at which the volume should be mounted. Must not contain ':'. + /// Path within the container at which the volume should be mounted. Must + /// not contain ':'. #[serde(rename = "mountPath")] pub mount_path: String, - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, /// This must match the Name of a Volume. pub name: String, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration +/// RackConfig Configures the operator to deploy rack aware Aerospike cluster. +/// Pods will be deployed in given racks based on given configuration #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfig { - /// MaxIgnorablePods is the maximum number/percentage of pending/failed pods in a rack that are ignored while assessing cluster stability. Pods identified using this value are not considered part of the cluster. Additionally, in SC mode clusters, these pods are removed from the roster. This is particularly useful when some pods are stuck in pending/failed state due to any scheduling issues and cannot be fixed by simply updating the CR. It enables the operator to perform specific operations on the cluster, like changing Aerospike configurations, without being hindered by these problematic pods. Remember to set MaxIgnorablePods back to 0 once the required operation is done. This makes sure that later on, all pods are properly counted when evaluating the cluster stability. + /// MaxIgnorablePods is the maximum number/percentage of pending/failed pods in a rack that are ignored while + /// assessing cluster stability. Pods identified using this value are not considered part of the cluster. + /// Additionally, in SC mode clusters, these pods are removed from the roster. + /// This is particularly useful when some pods are stuck in pending/failed state due to any scheduling issues and + /// cannot be fixed by simply updating the CR. + /// It enables the operator to perform specific operations on the cluster, like changing Aerospike configurations, + /// without being hindered by these problematic pods. + /// Remember to set MaxIgnorablePods back to 0 once the required operation is done. + /// This makes sure that later on, all pods are properly counted when evaluating the cluster stability. #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxIgnorablePods")] pub max_ignorable_pods: Option, /// List of Aerospike namespaces for which rack feature will be enabled @@ -2825,7 +4178,8 @@ pub struct AerospikeClusterRackConfigRacks { /// AerospikeConfig overrides the common AerospikeConfig for this Rack. This is merged with global Aerospike config. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeConfig")] pub aerospike_config: Option>, - /// Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global Aerospike config + /// Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global + /// Aerospike config #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveAerospikeConfig")] pub effective_aerospike_config: Option>, /// Effective/operative PodSpec. The resultant is user input if specified else global PodSpec @@ -2842,7 +4196,8 @@ pub struct AerospikeClusterRackConfigRacks { /// PodSpec to use for the pods in this rack. This value overwrites the global storage config #[serde(default, skip_serializing_if = "Option::is_none", rename = "podSpec")] pub pod_spec: Option, - /// RackLabel for setting rack affinity. Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: } + /// RackLabel for setting rack affinity. + /// Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: } #[serde(default, skip_serializing_if = "Option::is_none", rename = "rackLabel")] pub rack_label: Option, /// Region name for setting rack affinity. Rack pods will be deployed to given Region @@ -2887,15 +4242,28 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -2915,31 +4283,47 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityPr pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -2947,7 +4331,9 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRe pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -2958,26 +4344,38 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRe pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -2985,10 +4383,24 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRe /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -2999,144 +4411,244 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPre /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -3144,10 +4656,24 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityReq /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -3158,164 +4684,274 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinit /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } @@ -3343,7 +4979,8 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -3355,10 +4992,12 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageBlockVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -3418,7 +5057,8 @@ pub enum AerospikeClusterRackConfigRacksEffectiveStorageBlockVolumePolicyWipeMet /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -3430,10 +5070,12 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageFilesystemVolumePolicy /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -3495,7 +5137,8 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -3510,7 +5153,8 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -3521,7 +5165,8 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -3537,16 +5182,25 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesAerospike { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -3589,16 +5243,25 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesInitContainers #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -3629,16 +5292,25 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSidecars { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -3649,14 +5321,19 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -3664,13 +5341,27 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -3683,20 +5374,37 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceConfigMap pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -3704,7 +5412,8 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceEmptyDir /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -3738,37 +5447,61 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourcePersisten /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -3778,10 +5511,18 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceSecret { pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -3828,15 +5569,28 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -3856,31 +5610,47 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityPreferredDu pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -3888,7 +5658,9 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDur pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -3899,26 +5671,38 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDur pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -3926,10 +5710,24 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDur /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -3940,144 +5738,244 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDur /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -4085,10 +5983,24 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuri /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -4099,164 +6011,274 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferre /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } @@ -4284,7 +6306,8 @@ pub struct AerospikeClusterRackConfigRacksStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4296,10 +6319,12 @@ pub struct AerospikeClusterRackConfigRacksStorageBlockVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4359,7 +6384,8 @@ pub enum AerospikeClusterRackConfigRacksStorageBlockVolumePolicyWipeMethod { /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4371,10 +6397,12 @@ pub struct AerospikeClusterRackConfigRacksStorageFilesystemVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4436,7 +6464,8 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4451,7 +6480,8 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -4462,7 +6492,8 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4478,16 +6509,25 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesAerospike { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -4530,16 +6570,25 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesInitContainers { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -4570,16 +6619,25 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSidecars { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -4590,14 +6648,19 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -4605,13 +6668,27 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -4624,20 +6701,37 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceConfigMap { pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -4645,7 +6739,8 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceEmptyDir { /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -4679,37 +6774,61 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSourcePersistentVolumeSe /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -4719,10 +6838,18 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceSecret { pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -4738,20 +6865,25 @@ pub enum AerospikeClusterRackConfigRacksStorageVolumesWipeMethod { DeleteFiles, } -/// SeedsFinderServices creates additional Kubernetes service that allow clients to discover Aerospike cluster nodes. +/// SeedsFinderServices creates additional Kubernetes service that allow +/// clients to discover Aerospike cluster nodes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterSeedsFinderServices { - /// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. + /// LoadBalancer created to discover Aerospike Cluster nodes from outside of + /// Kubernetes cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancer")] pub load_balancer: Option, } -/// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. +/// LoadBalancer created to discover Aerospike Cluster nodes from outside of +/// Kubernetes cluster. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterSeedsFinderServicesLoadBalancer { #[serde(default, skip_serializing_if = "Option::is_none")] pub annotations: Option>, - /// ServiceExternalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's "externally-facing" addresses (NodePorts, ExternalIPs, and LoadBalancer IPs. + /// ServiceExternalTrafficPolicy describes how nodes distribute service traffic they + /// receive on one of the Service's "externally-facing" addresses (NodePorts, ExternalIPs, + /// and LoadBalancer IPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "externalTrafficPolicy")] pub external_traffic_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancerSourceRanges")] @@ -4762,12 +6894,14 @@ pub struct AerospikeClusterSeedsFinderServicesLoadBalancer { /// The name of the port exposed on load balancer service. #[serde(default, skip_serializing_if = "Option::is_none", rename = "portName")] pub port_name: Option, - /// TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. If there is no tls port configured then regular port from network.service is used. + /// TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. + /// If there is no tls port configured then regular port from network.service is used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetPort")] pub target_port: Option, } -/// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. +/// LoadBalancer created to discover Aerospike Cluster nodes from outside of +/// Kubernetes cluster. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum AerospikeClusterSeedsFinderServicesLoadBalancerExternalTrafficPolicy { Local, @@ -4797,7 +6931,8 @@ pub struct AerospikeClusterStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4809,10 +6944,12 @@ pub struct AerospikeClusterStorageBlockVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4872,7 +7009,8 @@ pub enum AerospikeClusterStorageBlockVolumePolicyWipeMethod { /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4884,10 +7022,12 @@ pub struct AerospikeClusterStorageFilesystemVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4949,7 +7089,8 @@ pub struct AerospikeClusterStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4964,7 +7105,8 @@ pub struct AerospikeClusterStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -4975,7 +7117,8 @@ pub struct AerospikeClusterStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4991,16 +7134,25 @@ pub struct AerospikeClusterStorageVolumesAerospike { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -5043,16 +7195,25 @@ pub struct AerospikeClusterStorageVolumesInitContainers { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -5083,16 +7244,25 @@ pub struct AerospikeClusterStorageVolumesSidecars { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -5103,14 +7273,19 @@ pub struct AerospikeClusterStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -5118,13 +7293,27 @@ pub struct AerospikeClusterStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -5137,20 +7326,37 @@ pub struct AerospikeClusterStorageVolumesSourceConfigMap { pub struct AerospikeClusterStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -5158,7 +7364,8 @@ pub struct AerospikeClusterStorageVolumesSourceEmptyDir { /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -5192,37 +7399,61 @@ pub struct AerospikeClusterStorageVolumesSourcePersistentVolumeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -5232,10 +7463,18 @@ pub struct AerospikeClusterStorageVolumesSourceSecret { pub struct AerospikeClusterStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -5254,10 +7493,12 @@ pub enum AerospikeClusterStorageVolumesWipeMethod { /// ValidationPolicy controls validation of the Aerospike cluster resource. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterValidationPolicy { - /// skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. Defaults to false. + /// skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. + /// Defaults to false. #[serde(rename = "skipWorkDirValidate")] pub skip_work_dir_validate: bool, - /// ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. Defaults to false. + /// ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. + /// Defaults to false. #[serde(rename = "skipXdrDlogFileValidate")] pub skip_xdr_dlog_file_validate: bool, } @@ -5265,7 +7506,8 @@ pub struct AerospikeClusterValidationPolicy { /// AerospikeClusterStatus defines the observed state of AerospikeCluster #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatus { - /// AerospikeAccessControl has the Aerospike roles and users definitions. Required if aerospike cluster security is enabled. + /// AerospikeAccessControl has the Aerospike roles and users definitions. + /// Required if aerospike cluster security is enabled. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeAccessControl")] pub aerospike_access_control: Option, /// AerospikeConfig sets config in aerospike.conf file. Other configs are taken as default @@ -5277,23 +7519,38 @@ pub struct AerospikeClusterStatus { /// Disable the PodDisruptionBudget creation for the Aerospike cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "disablePDB")] pub disable_pdb: Option, - /// EnableDynamicConfigUpdate enables dynamic config update flow of the operator. If enabled, operator will try to update the Aerospike config dynamically. In case of inconsistent state during dynamic config update, operator falls back to rolling restart. + /// EnableDynamicConfigUpdate enables dynamic config update flow of the operator. + /// If enabled, operator will try to update the Aerospike config dynamically. + /// In case of inconsistent state during dynamic config update, operator falls back to rolling restart. #[serde(default, skip_serializing_if = "Option::is_none", rename = "enableDynamicConfigUpdate")] pub enable_dynamic_config_update: Option, /// Aerospike server image #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, - /// IsReadinessProbeEnabled tells whether the readiness probe is present in all pods or not. Moreover, PodDisruptionBudget should be created for the Aerospike cluster only when this field is enabled. + /// IsReadinessProbeEnabled tells whether the readiness probe is present in all pods or not. + /// Moreover, PodDisruptionBudget should be created for the Aerospike cluster only when this field is enabled. #[serde(default, skip_serializing_if = "Option::is_none", rename = "isReadinessProbeEnabled")] pub is_readiness_probe_enabled: Option, /// K8sNodeBlockList is a list of Kubernetes nodes which are not used for Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "k8sNodeBlockList")] pub k8s_node_block_list: Option>, - /// MaxUnavailable is the percentage/number of pods that can be allowed to go down or unavailable before application disruption. This value is used to create PodDisruptionBudget. Defaults to 1. + /// MaxUnavailable is the percentage/number of pods that can be allowed to go down or unavailable before application + /// disruption. This value is used to create PodDisruptionBudget. Defaults to 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxUnavailable")] pub max_unavailable: Option, - /// If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod. NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. - /// If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user. Deprecated: MultiPodPerHost is now part of podSpec + /// If set true then multiple pods can be created per Kubernetes Node. + /// This will create a NodePort service for each Pod. + /// NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , + /// and any traffic that is sent to this port is forwarded to the service. + /// Here service picks a random port in range (30000-32767), so these port should be open. + /// + /// + /// If set false then only single pod can be created per Kubernetes Node. + /// This will create Pods using hostPort setting. + /// The container port will be exposed to the external network at :, + /// where the hostIP is the IP address of the Kubernetes Node where the container is running and + /// the hostPort is the port requested by the user. + /// Deprecated: MultiPodPerHost is now part of podSpec #[serde(default, skip_serializing_if = "Option::is_none", rename = "multiPodPerHost")] pub multi_pod_per_host: Option, /// Operations is a list of on-demand operation to be performed on the Aerospike cluster. @@ -5308,13 +7565,19 @@ pub struct AerospikeClusterStatus { /// Additional configuration for create Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "podSpec")] pub pod_spec: Option, - /// Pods has Aerospike specific status of the pods. This is map instead of the conventional map as list convention to allow each pod to patch update its own status. The map key is the name of the pod. + /// Pods has Aerospike specific status of the pods. + /// This is map instead of the conventional map as list convention to allow each pod to patch update its own + /// status. The map key is the name of the pod. #[serde(default, skip_serializing_if = "Option::is_none")] pub pods: Option>, - /// RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration + /// RackConfig Configures the operator to deploy rack aware Aerospike cluster. + /// Pods will be deployed in given racks based on given configuration #[serde(default, skip_serializing_if = "Option::is_none", rename = "rackConfig")] pub rack_config: Option, - /// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Deprecated: Resources field is now part of containerSpec + /// Define resources requests and limits for Aerospike Server Container. + /// Please contact aerospike for proper sizing exercise + /// Only Memory and Cpu resources can be given + /// Deprecated: Resources field is now part of containerSpec #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, /// RosterNodeBlockList is a list of blocked nodeIDs from roster in a strong-consistency setup @@ -5334,7 +7597,8 @@ pub struct AerospikeClusterStatus { pub validation_policy: Option, } -/// AerospikeAccessControl has the Aerospike roles and users definitions. Required if aerospike cluster security is enabled. +/// AerospikeAccessControl has the Aerospike roles and users definitions. +/// Required if aerospike cluster security is enabled. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusAerospikeAccessControl { /// AerospikeClientAdminPolicy specify the aerospike client admin policy for access control operations. @@ -5379,7 +7643,8 @@ pub struct AerospikeClusterStatusAerospikeAccessControlUsers { pub name: String, /// Roles is the list of roles granted to the user. pub roles: Vec, - /// SecretName has secret info created by user. User needs to create this secret from password literal. eg: kubectl create secret generic dev-db-secret --from-literal=password='password' + /// SecretName has secret info created by user. User needs to create this secret from password literal. + /// eg: kubectl create secret generic dev-db-secret --from-literal=password='password' #[serde(rename = "secretName")] pub secret_name: String, } @@ -5387,40 +7652,78 @@ pub struct AerospikeClusterStatusAerospikeAccessControlUsers { /// AerospikeNetworkPolicy specifies how clients and tools access the Aerospike cluster. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusAerospikeNetworkPolicy { - /// AccessType is the type of network address to use for Aerospike access address. Defaults to hostInternal. + /// AccessType is the type of network address to use for Aerospike access address. + /// Defaults to hostInternal. #[serde(default, skip_serializing_if = "Option::is_none")] pub access: Option, - /// AlternateAccessType is the type of network address to use for Aerospike alternate access address. Defaults to hostExternal. + /// AlternateAccessType is the type of network address to use for Aerospike alternate access address. + /// Defaults to hostExternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "alternateAccess")] pub alternate_access: Option, - /// CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' access type. + /// CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' access type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "customAccessNetworkNames")] pub custom_access_network_names: Option>, - /// CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' alternateAccess type + /// CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike + /// alternate access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' alternateAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customAlternateAccessNetworkNames")] pub custom_alternate_access_network_names: Option>, - /// CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' fabric type + /// CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' fabric type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customFabricNetworkNames")] pub custom_fabric_network_names: Option>, - /// CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAccess type + /// CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' tlsAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSAccessNetworkNames")] pub custom_tls_access_network_names: Option>, - /// CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAlternateAccess type + /// CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS + /// alternate access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' tlsAlternateAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSAlternateAccessNetworkNames")] pub custom_tls_alternate_access_network_names: Option>, - /// CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsFabric type + /// CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network + /// interfaces to the pod. + /// Required with 'customInterface' tlsFabric type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSFabricNetworkNames")] pub custom_tls_fabric_network_names: Option>, - /// FabricType is the type of network address to use for Aerospike fabric address. Defaults is empty meaning all interfaces 'any'. + /// FabricType is the type of network address to use for Aerospike fabric address. + /// Defaults is empty meaning all interfaces 'any'. #[serde(default, skip_serializing_if = "Option::is_none")] pub fabric: Option, - /// TLSAccessType is the type of network address to use for Aerospike TLS access address. Defaults to hostInternal. + /// TLSAccessType is the type of network address to use for Aerospike TLS access address. + /// Defaults to hostInternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsAccess")] pub tls_access: Option, - /// TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. Defaults to hostExternal. + /// TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. + /// Defaults to hostExternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsAlternateAccess")] pub tls_alternate_access: Option, - /// TLSFabricType is the type of network address to use for Aerospike TLS fabric address. Defaults is empty meaning all interfaces 'any'. + /// TLSFabricType is the type of network address to use for Aerospike TLS fabric address. + /// Defaults is empty meaning all interfaces 'any'. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsFabric")] pub tls_fabric: Option, } @@ -5517,7 +7820,9 @@ pub enum AerospikeClusterStatusOperationsKind { /// Certificates to connect to Aerospike. If omitted then certs are taken from the secret 'aerospike-secret'. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusOperatorClientCertSpec { - /// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem. + /// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike + /// cluster. + /// All paths are on operator's filesystem. #[serde(default, skip_serializing_if = "Option::is_none", rename = "certPathInOperator")] pub cert_path_in_operator: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretCertSource")] @@ -5527,7 +7832,9 @@ pub struct AerospikeClusterStatusOperatorClientCertSpec { pub tls_client_name: Option, } -/// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem. +/// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike +/// cluster. +/// All paths are on operator's filesystem. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusOperatorClientCertSpecCertPathInOperator { #[serde(default, skip_serializing_if = "Option::is_none", rename = "caCertsPath")] @@ -5573,28 +7880,35 @@ pub enum AerospikeClusterStatusPhase { /// Additional configuration for create Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpec { - /// AerospikeContainerSpec configures the aerospike-server container created by the operator. + /// AerospikeContainerSpec configures the aerospike-server container + /// created by the operator. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeContainer")] pub aerospike_container: Option, - /// AerospikeInitContainerSpec configures the aerospike-init container created by the operator. + /// AerospikeInitContainerSpec configures the aerospike-init container + /// created by the operator. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeInitContainer")] pub aerospike_init_container: Option, /// Affinity rules for pod placement. #[serde(default, skip_serializing_if = "Option::is_none")] pub affinity: Option, - /// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None` + /// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. + /// This is required field when dnsPolicy is set to `None` #[serde(default, skip_serializing_if = "Option::is_none", rename = "dnsConfig")] pub dns_config: Option, - /// DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet + /// DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. + /// If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet #[serde(default, skip_serializing_if = "Option::is_none", rename = "dnsPolicy")] pub dns_policy: Option, /// Effective value of the DNSPolicy #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveDNSPolicy")] pub effective_dns_policy: Option, - /// HostNetwork enables host networking for the pod. To enable hostNetwork multiPodPerHost must be false. + /// HostNetwork enables host networking for the pod. + /// To enable hostNetwork multiPodPerHost must be false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostNetwork")] pub host_network: Option, - /// ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod + /// ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of + /// the images used by this PodSpec. + /// More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] pub image_pull_secrets: Option>, /// InitContainers to add to the pods. @@ -5603,14 +7917,26 @@ pub struct AerospikeClusterStatusPodSpec { /// MetaData to add to the pod. #[serde(default, skip_serializing_if = "Option::is_none")] pub metadata: Option, - /// If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod if aerospikeNetworkPolicy defined has one of the network types: 'hostInternal', 'hostExternal', 'configuredIP' NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. - /// If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user. + /// If set true then multiple pods can be created per Kubernetes Node. + /// This will create a NodePort service for each Pod if aerospikeNetworkPolicy defined + /// has one of the network types: 'hostInternal', 'hostExternal', 'configuredIP' + /// NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , + /// and any traffic that is sent to this port is forwarded to the service. + /// Here service picks a random port in range (30000-32767), so these port should be open. + /// + /// + /// If set false then only single pod can be created per Kubernetes Node. + /// This will create Pods using hostPort setting. + /// The container port will be exposed to the external network at :, + /// where the hostIP is the IP address of the Kubernetes Node where the container is running and + /// the hostPort is the port requested by the user. #[serde(default, skip_serializing_if = "Option::is_none", rename = "multiPodPerHost")] pub multi_pod_per_host: Option, /// NodeSelector constraints for this pod. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeSelector")] pub node_selector: Option>, - /// SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field. + /// SecurityContext holds pod-level security attributes and common container settings. + /// Optional: Defaults to empty. See type description for default values of each field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, /// Sidecars to add to the pod. @@ -5621,10 +7947,14 @@ pub struct AerospikeClusterStatusPodSpec { pub tolerations: Option>, } -/// AerospikeContainerSpec configures the aerospike-server container created by the operator. +/// AerospikeContainerSpec configures the aerospike-server container +/// created by the operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainer { - /// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. + /// Define resources requests and limits for Aerospike Server Container. + /// Please contact aerospike for proper sizing exercise + /// Only Memory and Cpu resources can be given + /// Resources.Limits should be more than Resources.Requests. #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, /// SecurityContext that will be added to aerospike-server container created by operator. @@ -5632,18 +7962,31 @@ pub struct AerospikeClusterStatusPodSpecAerospikeContainer { pub security_context: Option, } -/// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. +/// Define resources requests and limits for Aerospike Server Container. +/// Please contact aerospike for proper sizing exercise +/// Only Memory and Cpu resources can be given +/// Resources.Limits should be more than Resources.Requests. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -5651,49 +7994,93 @@ pub struct AerospikeClusterStatusPodSpecAerospikeContainerResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } /// SecurityContext that will be added to aerospike-server container created by operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextCapabilities { /// Added capabilities @@ -5704,7 +8091,11 @@ pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextCapabil pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -5721,42 +8112,74 @@ pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextSeLinux pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// AerospikeInitContainerSpec configures the aerospike-init container created by the operator. +/// AerospikeInitContainerSpec configures the aerospike-init container +/// created by the operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainer { - /// ImageRegistry is the name of image registry for aerospike-init container image ImageRegistry, e.g. docker.io, redhat.access.com + /// ImageNameAndTag is the name:tag of aerospike-init container image + #[serde(default, skip_serializing_if = "Option::is_none", rename = "imageNameAndTag")] + pub image_name_and_tag: Option, + /// ImageRegistry is the name of image registry for aerospike-init container image + /// ImageRegistry, e.g. docker.io, redhat.access.com #[serde(default, skip_serializing_if = "Option::is_none", rename = "imageRegistry")] pub image_registry: Option, - /// Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. + /// ImageRegistryNamespace is the name of namespace in registry for aerospike-init container image + #[serde(default, skip_serializing_if = "Option::is_none", rename = "imageRegistryNamespace")] + pub image_registry_namespace: Option, + /// Define resources requests and limits for Aerospike init Container. + /// Only Memory and Cpu resources can be given + /// Resources.Limits should be more than Resources.Requests. #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, /// SecurityContext that will be added to aerospike-init container created by operator. @@ -5764,18 +8187,30 @@ pub struct AerospikeClusterStatusPodSpecAerospikeInitContainer { pub security_context: Option, } -/// Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. +/// Define resources requests and limits for Aerospike init Container. +/// Only Memory and Cpu resources can be given +/// Resources.Limits should be more than Resources.Requests. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -5783,49 +8218,93 @@ pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } /// SecurityContext that will be added to aerospike-init container created by operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextCapabilities { /// Added capabilities @@ -5836,7 +8315,11 @@ pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextCap pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -5853,31 +8336,53 @@ pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextSeL pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } @@ -5899,15 +8404,28 @@ pub struct AerospikeClusterStatusPodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -5927,31 +8445,47 @@ pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityPreferredDuringSched pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -5959,7 +8493,9 @@ pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedu pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -5970,26 +8506,38 @@ pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedu pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -5997,10 +8545,24 @@ pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedu /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -6011,144 +8573,244 @@ pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedu /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -6156,10 +8818,24 @@ pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedul /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -6170,158 +8846,266 @@ pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSc /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None` +/// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. +/// This is required field when dnsPolicy is set to `None` #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecDnsConfig { - /// A list of DNS name server IP addresses. This will be appended to the base nameservers generated from DNSPolicy. Duplicated nameservers will be removed. + /// A list of DNS name server IP addresses. + /// This will be appended to the base nameservers generated from DNSPolicy. + /// Duplicated nameservers will be removed. #[serde(default, skip_serializing_if = "Option::is_none")] pub nameservers: Option>, - /// A list of DNS resolver options. This will be merged with the base options generated from DNSPolicy. Duplicated entries will be removed. Resolution options given in Options will override those that appear in the base DNSPolicy. + /// A list of DNS resolver options. + /// This will be merged with the base options generated from DNSPolicy. + /// Duplicated entries will be removed. Resolution options given in Options + /// will override those that appear in the base DNSPolicy. #[serde(default, skip_serializing_if = "Option::is_none")] pub options: Option>, - /// A list of DNS search domains for host-name lookup. This will be appended to the base search paths generated from DNSPolicy. Duplicated search paths will be removed. + /// A list of DNS search domains for host-name lookup. + /// This will be appended to the base search paths generated from DNSPolicy. + /// Duplicated search paths will be removed. #[serde(default, skip_serializing_if = "Option::is_none")] pub searches: Option>, } @@ -6336,10 +9120,13 @@ pub struct AerospikeClusterStatusPodSpecDnsConfigOptions { pub value: Option, } -/// LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. +/// LocalObjectReference contains enough information to let you locate the +/// referenced object inside the same namespace. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecImagePullSecrets { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -6347,75 +9134,166 @@ pub struct AerospikeClusterStatusPodSpecImagePullSecrets { /// A single application container that you want to run within a pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainers { - /// Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Arguments to the entrypoint. + /// The container image's CMD is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub args: Option>, - /// Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Entrypoint array. Not executed within a shell. + /// The container image's ENTRYPOINT is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, - /// List of environment variables to set in the container. Cannot be updated. + /// List of environment variables to set in the container. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub env: Option>, - /// List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. + /// List of sources to populate environment variables in the container. + /// The keys defined within a source must be a C_IDENTIFIER. All invalid keys + /// will be reported as an event when the container is starting. When a key exists in multiple + /// sources, the value associated with the last source will take precedence. + /// Values defined by an Env with a duplicate key will take precedence. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")] pub env_from: Option>, - /// Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets. + /// Container image name. + /// More info: https://kubernetes.io/docs/concepts/containers/images + /// This field is optional to allow higher level config management to default or override + /// container images in workload controllers like Deployments and StatefulSets. #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, - /// Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images + /// Image pull policy. + /// One of Always, Never, IfNotPresent. + /// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")] pub image_pull_policy: Option, - /// Actions that the management system should take in response to container lifecycle events. Cannot be updated. + /// Actions that the management system should take in response to container lifecycle events. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub lifecycle: Option, - /// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container liveness. + /// Container will be restarted if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "livenessProbe")] pub liveness_probe: Option, - /// Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated. + /// Name of the container specified as a DNS_LABEL. + /// Each container in a pod must have a unique name (DNS_LABEL). + /// Cannot be updated. pub name: String, - /// List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated. + /// List of ports to expose from the container. Not specifying a port here + /// DOES NOT prevent that port from being exposed. Any port which is + /// listening on the default "0.0.0.0" address inside a container will be + /// accessible from the network. + /// Modifying this array with strategic merge patch may corrupt the data. + /// For more information See https://github.com/kubernetes/kubernetes/issues/108255. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container service readiness. + /// Container will be removed from service endpoints if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, /// Resources resize policy for the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] pub resize_policy: Option>, - /// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Compute Resources required by this container. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, - /// RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is "Always". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as "Always" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy "Always" will be shut down. This lifecycle differs from normal init containers and is often referred to as a "sidecar" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed. + /// RestartPolicy defines the restart behavior of individual containers in a pod. + /// This field may only be set for init containers, and the only allowed value is "Always". + /// For non-init containers or when this field is not specified, + /// the restart behavior is defined by the Pod's restart policy and the container type. + /// Setting the RestartPolicy as "Always" for the init container will have the following effect: + /// this init container will be continually restarted on + /// exit until all regular containers have terminated. Once all regular + /// containers have completed, all init containers with restartPolicy "Always" + /// will be shut down. This lifecycle differs from normal init containers and + /// is often referred to as a "sidecar" container. Although this init + /// container still starts in the init container sequence, it does not wait + /// for the container to complete before proceeding to the next init + /// container. Instead, the next init container starts immediately after this + /// init container is started, or after any startupProbe has successfully + /// completed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, - /// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ + /// SecurityContext defines the security options the container should be run with. + /// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. + /// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, - /// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// StartupProbe indicates that the Pod has successfully initialized. + /// If specified, no other probes are executed until this completes successfully. + /// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. + /// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, + /// when it might take a long time to load data or warm a cache, than during steady-state operation. + /// This cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] pub startup_probe: Option, - /// Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. + /// Whether this container should allocate a buffer for stdin in the container runtime. If this + /// is not set, reads from stdin in the container will always result in EOF. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub stdin: Option, - /// Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false + /// Whether the container runtime should close the stdin channel after it has been opened by + /// a single attach. When stdin is true the stdin stream will remain open across multiple attach + /// sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the + /// first client attaches to stdin, and then remains open and accepts data until the client disconnects, + /// at which time stdin is closed and remains closed until the container is restarted. If this + /// flag is false, a container processes that reads from stdin will never receive an EOF. + /// Default is false #[serde(default, skip_serializing_if = "Option::is_none", rename = "stdinOnce")] pub stdin_once: Option, - /// Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. + /// Optional: Path at which the file to which the container's termination message + /// will be written is mounted into the container's filesystem. + /// Message written is intended to be brief final status, such as an assertion failure message. + /// Will be truncated by the node if greater than 4096 bytes. The total message length across + /// all containers will be limited to 12kb. + /// Defaults to /dev/termination-log. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePath")] pub termination_message_path: Option, - /// Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. + /// Indicate how the termination message should be populated. File will use the contents of + /// terminationMessagePath to populate the container status message on both success and failure. + /// FallbackToLogsOnError will use the last chunk of container log output if the termination + /// message file is empty and the container exited with an error. + /// The log output is limited to 2048 bytes or 80 lines, whichever is smaller. + /// Defaults to File. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePolicy")] pub termination_message_policy: Option, - /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. + /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub tty: Option, /// volumeDevices is the list of block devices to be used by the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeDevices")] pub volume_devices: Option>, - /// Pod volumes to mount into the container's filesystem. Cannot be updated. + /// Pod volumes to mount into the container's filesystem. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")] pub volume_mounts: Option>, - /// Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated. + /// Container's working directory. + /// If not specified, the container runtime's default will be used, which + /// might be configured in the container image. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "workingDir")] pub working_dir: Option, } @@ -6425,7 +9303,15 @@ pub struct AerospikeClusterStatusPodSpecInitContainers { pub struct AerospikeClusterStatusPodSpecInitContainersEnv { /// Name of the environment variable. Must be a C_IDENTIFIER. pub name: String, - /// Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". + /// Variable references $(VAR_NAME) are expanded + /// using the previously defined environment variables in the container and + /// any service environment variables. If a variable cannot be resolved, + /// the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + /// "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + /// Escaped references will never be expanded, regardless of whether the variable + /// exists or not. + /// Defaults to "". #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, /// Source for the environment variable's value. Cannot be used if value is not empty. @@ -6439,10 +9325,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFrom { /// Selects a key of a ConfigMap. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapKeyRef")] pub config_map_key_ref: Option, - /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + /// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")] pub field_ref: Option, - /// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + /// Selects a resource of the container: only resources limits and requests + /// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")] pub resource_field_ref: Option, /// Selects a key of a secret in the pod's namespace @@ -6455,7 +9343,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFrom { pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromConfigMapKeyRef { /// The key to select. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -6463,7 +9353,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromConfigMapKeyRe pub optional: Option, } -/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. +/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, +/// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromFieldRef { /// Version of the schema the FieldPath is written in terms of, defaults to "v1". @@ -6474,7 +9365,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromFieldRef { pub field_path: String, } -/// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. +/// Selects a resource of the container: only resources limits and requests +/// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromResourceFieldRef { /// Container name: required for volumes, optional for env vars @@ -6492,7 +9384,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromResourceFieldR pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromSecretKeyRef { /// The key of the secret to select from. Must be a valid secret key. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -6517,7 +9411,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvFrom { /// The ConfigMap to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersEnvFromConfigMapRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -6528,7 +9424,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvFromConfigMapRef { /// The Secret to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersEnvFromSecretRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -6536,18 +9434,33 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvFromSecretRef { pub optional: Option, } -/// Actions that the management system should take in response to container lifecycle events. Cannot be updated. +/// Actions that the management system should take in response to container lifecycle events. +/// Cannot be updated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecycle { - /// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PostStart is called immediately after a container is created. If the handler fails, + /// the container is terminated and restarted according to its restart policy. + /// Other management of the container blocks until the hook completes. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "postStart")] pub post_start: Option, - /// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PreStop is called immediately before a container is terminated due to an + /// API request or management event such as liveness/startup probe failure, + /// preemption, resource contention, etc. The handler is not called if the + /// container crashes or exits. The Pod's termination grace period countdown begins before the + /// PreStop hook is executed. Regardless of the outcome of the handler, the + /// container will eventually terminate within the Pod's termination grace + /// period (unless delayed by finalizers). Other management of the container blocks until the hook completes + /// or until the termination grace period is reached. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "preStop")] pub pre_stop: Option, } -/// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PostStart is called immediately after a container is created. If the handler fails, +/// the container is terminated and restarted according to its restart policy. +/// Other management of the container blocks until the hook completes. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStart { /// Exec specifies the action to take. @@ -6559,7 +9472,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStart { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -6567,7 +9482,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStart { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -6575,7 +9494,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -6584,9 +9504,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartHttpGet /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -6594,7 +9517,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartHttpGet /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -6607,17 +9531,29 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PreStop is called immediately before a container is terminated due to an +/// API request or management event such as liveness/startup probe failure, +/// preemption, resource contention, etc. The handler is not called if the +/// container crashes or exits. The Pod's termination grace period countdown begins before the +/// PreStop hook is executed. Regardless of the outcome of the handler, the +/// container will eventually terminate within the Pod's termination grace +/// period (unless delayed by finalizers). Other management of the container blocks until the hook completes +/// or until the termination grace period is reached. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStop { /// Exec specifies the action to take. @@ -6629,7 +9565,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStop { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -6637,7 +9575,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStop { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -6645,7 +9587,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -6654,9 +9597,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -6664,7 +9610,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -6677,23 +9624,31 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container liveness. +/// Container will be restarted if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -6702,22 +9657,36 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -6725,7 +9694,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -6735,8 +9708,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeExec { pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -6744,7 +9720,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -6753,9 +9730,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -6763,7 +9743,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -6775,37 +9756,50 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerPort represents a network port in a single container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersPorts { - /// Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536. + /// Number of port to expose on the pod's IP address. + /// This must be a valid port number, 0 < x < 65536. #[serde(rename = "containerPort")] pub container_port: i32, /// What host IP to bind the external port to. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostIP")] pub host_ip: Option, - /// Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this. + /// Number of port to expose on the host. + /// If specified, this must be a valid port number, 0 < x < 65536. + /// If HostNetwork is specified, this must match ContainerPort. + /// Most containers do not need this. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPort")] pub host_port: Option, - /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. + /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each + /// named port in a pod must have a unique name. Name for the port that can be + /// referred to by services. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, - /// Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP". + /// Protocol for port. Must be UDP, TCP, or SCTP. + /// Defaults to "TCP". #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } -/// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container service readiness. +/// Container will be removed from service endpoints if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -6814,22 +9808,36 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -6837,7 +9845,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -6847,8 +9859,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeExec { pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -6856,7 +9871,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -6865,9 +9881,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -6875,7 +9894,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -6887,33 +9907,49 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerResizePolicy represents resource resize policy for the container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersResizePolicy { - /// Name of the resource to which this resource resize policy applies. Supported values: cpu, memory. + /// Name of the resource to which this resource resize policy applies. + /// Supported values: cpu, memory. #[serde(rename = "resourceName")] pub resource_name: String, - /// Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired. + /// Restart policy to apply when specified resource is resized. + /// If not specified, it defaults to NotRequired. #[serde(rename = "restartPolicy")] pub restart_policy: String, } -/// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ +/// Compute Resources required by this container. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -6921,49 +9957,95 @@ pub struct AerospikeClusterStatusPodSpecInitContainersResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } -/// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ +/// SecurityContext defines the security options the container should be run with. +/// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. +/// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextCapabilities { /// Added capabilities @@ -6974,7 +10056,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextCapabilitie pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -6991,42 +10077,71 @@ pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextSeLinuxOpti pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// StartupProbe indicates that the Pod has successfully initialized. +/// If specified, no other probes are executed until this completes successfully. +/// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. +/// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, +/// when it might take a long time to load data or warm a cache, than during steady-state operation. +/// This cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -7035,22 +10150,36 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -7058,7 +10187,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7068,8 +10201,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeExec { pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -7077,7 +10213,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7086,9 +10223,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7096,7 +10236,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7108,7 +10249,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } @@ -7125,21 +10268,30 @@ pub struct AerospikeClusterStatusPodSpecInitContainersVolumeDevices { /// VolumeMount describes a mounting of a Volume within a container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersVolumeMounts { - /// Path within the container at which the volume should be mounted. Must not contain ':'. + /// Path within the container at which the volume should be mounted. Must + /// not contain ':'. #[serde(rename = "mountPath")] pub mount_path: String, - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, /// This must match the Name of a Volume. pub name: String, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -7155,44 +10307,97 @@ pub struct AerospikeClusterStatusPodSpecMetadata { pub labels: Option>, } -/// SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field. +/// SecurityContext holds pod-level security attributes and common container settings. +/// Optional: Defaults to empty. See type description for default values of each field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSecurityContext { - /// A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: - /// 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- - /// If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows. + /// A special supplemental group that applies to all containers in a pod. + /// Some volume types allow the Kubelet to change the ownership of that volume + /// to be owned by the pod: + /// + /// + /// 1. The owning GID will be the FSGroup + /// 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) + /// 3. The permission bits are OR'd with rw-rw---- + /// + /// + /// If unset, the Kubelet will not modify the ownership and permissions of any volume. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] pub fs_group: Option, - /// fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. Note that this field cannot be set when spec.os.name is windows. + /// fsGroupChangePolicy defines behavior of changing ownership and permission of the volume + /// before being exposed inside Pod. This field will only apply to + /// volume types which support fsGroup based ownership(and permissions). + /// It will have no effect on ephemeral volume types such as: secret, configmaps + /// and emptydir. + /// Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupChangePolicy")] pub fs_group_change_policy: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence + /// for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence + /// for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to all containers. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in SecurityContext. If set in + /// both SecurityContext and PodSecurityContext, the value specified in SecurityContext + /// takes precedence for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by the containers in this pod. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// A list of groups applied to the first process run in each container, in addition to the container's primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows. + /// A list of groups applied to the first process run in each container, in addition + /// to the container's primary GID, the fsGroup (if specified), and group memberships + /// defined in the container image for the uid of the container process. If unspecified, + /// no additional groups are added to any container. Note that group memberships + /// defined in the container image for the uid of the container process are still effective, + /// even if they are not included in this list. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")] pub supplemental_groups: Option>, - /// Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows. + /// Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported + /// sysctls (by the container runtime) might fail to launch. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub sysctls: Option>, - /// The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options within a container's SecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to all containers. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in SecurityContext. If set in +/// both SecurityContext and PodSecurityContext, the value specified in SecurityContext +/// takes precedence for that container. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -7209,14 +10414,23 @@ pub struct AerospikeClusterStatusPodSpecSecurityContextSeLinuxOptions { pub user: Option, } -/// The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by the containers in this pod. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } @@ -7230,19 +10444,30 @@ pub struct AerospikeClusterStatusPodSpecSecurityContextSysctls { pub value: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options within a container's SecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } @@ -7250,75 +10475,166 @@ pub struct AerospikeClusterStatusPodSpecSecurityContextWindowsOptions { /// A single application container that you want to run within a pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecars { - /// Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Arguments to the entrypoint. + /// The container image's CMD is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub args: Option>, - /// Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Entrypoint array. Not executed within a shell. + /// The container image's ENTRYPOINT is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, - /// List of environment variables to set in the container. Cannot be updated. + /// List of environment variables to set in the container. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub env: Option>, - /// List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. + /// List of sources to populate environment variables in the container. + /// The keys defined within a source must be a C_IDENTIFIER. All invalid keys + /// will be reported as an event when the container is starting. When a key exists in multiple + /// sources, the value associated with the last source will take precedence. + /// Values defined by an Env with a duplicate key will take precedence. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")] pub env_from: Option>, - /// Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets. + /// Container image name. + /// More info: https://kubernetes.io/docs/concepts/containers/images + /// This field is optional to allow higher level config management to default or override + /// container images in workload controllers like Deployments and StatefulSets. #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, - /// Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images + /// Image pull policy. + /// One of Always, Never, IfNotPresent. + /// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")] pub image_pull_policy: Option, - /// Actions that the management system should take in response to container lifecycle events. Cannot be updated. + /// Actions that the management system should take in response to container lifecycle events. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub lifecycle: Option, - /// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container liveness. + /// Container will be restarted if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "livenessProbe")] pub liveness_probe: Option, - /// Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated. + /// Name of the container specified as a DNS_LABEL. + /// Each container in a pod must have a unique name (DNS_LABEL). + /// Cannot be updated. pub name: String, - /// List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated. + /// List of ports to expose from the container. Not specifying a port here + /// DOES NOT prevent that port from being exposed. Any port which is + /// listening on the default "0.0.0.0" address inside a container will be + /// accessible from the network. + /// Modifying this array with strategic merge patch may corrupt the data. + /// For more information See https://github.com/kubernetes/kubernetes/issues/108255. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container service readiness. + /// Container will be removed from service endpoints if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, /// Resources resize policy for the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] pub resize_policy: Option>, - /// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Compute Resources required by this container. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, - /// RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is "Always". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as "Always" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy "Always" will be shut down. This lifecycle differs from normal init containers and is often referred to as a "sidecar" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed. + /// RestartPolicy defines the restart behavior of individual containers in a pod. + /// This field may only be set for init containers, and the only allowed value is "Always". + /// For non-init containers or when this field is not specified, + /// the restart behavior is defined by the Pod's restart policy and the container type. + /// Setting the RestartPolicy as "Always" for the init container will have the following effect: + /// this init container will be continually restarted on + /// exit until all regular containers have terminated. Once all regular + /// containers have completed, all init containers with restartPolicy "Always" + /// will be shut down. This lifecycle differs from normal init containers and + /// is often referred to as a "sidecar" container. Although this init + /// container still starts in the init container sequence, it does not wait + /// for the container to complete before proceeding to the next init + /// container. Instead, the next init container starts immediately after this + /// init container is started, or after any startupProbe has successfully + /// completed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, - /// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ + /// SecurityContext defines the security options the container should be run with. + /// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. + /// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, - /// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// StartupProbe indicates that the Pod has successfully initialized. + /// If specified, no other probes are executed until this completes successfully. + /// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. + /// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, + /// when it might take a long time to load data or warm a cache, than during steady-state operation. + /// This cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] pub startup_probe: Option, - /// Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. + /// Whether this container should allocate a buffer for stdin in the container runtime. If this + /// is not set, reads from stdin in the container will always result in EOF. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub stdin: Option, - /// Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false + /// Whether the container runtime should close the stdin channel after it has been opened by + /// a single attach. When stdin is true the stdin stream will remain open across multiple attach + /// sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the + /// first client attaches to stdin, and then remains open and accepts data until the client disconnects, + /// at which time stdin is closed and remains closed until the container is restarted. If this + /// flag is false, a container processes that reads from stdin will never receive an EOF. + /// Default is false #[serde(default, skip_serializing_if = "Option::is_none", rename = "stdinOnce")] pub stdin_once: Option, - /// Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. + /// Optional: Path at which the file to which the container's termination message + /// will be written is mounted into the container's filesystem. + /// Message written is intended to be brief final status, such as an assertion failure message. + /// Will be truncated by the node if greater than 4096 bytes. The total message length across + /// all containers will be limited to 12kb. + /// Defaults to /dev/termination-log. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePath")] pub termination_message_path: Option, - /// Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. + /// Indicate how the termination message should be populated. File will use the contents of + /// terminationMessagePath to populate the container status message on both success and failure. + /// FallbackToLogsOnError will use the last chunk of container log output if the termination + /// message file is empty and the container exited with an error. + /// The log output is limited to 2048 bytes or 80 lines, whichever is smaller. + /// Defaults to File. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePolicy")] pub termination_message_policy: Option, - /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. + /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub tty: Option, /// volumeDevices is the list of block devices to be used by the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeDevices")] pub volume_devices: Option>, - /// Pod volumes to mount into the container's filesystem. Cannot be updated. + /// Pod volumes to mount into the container's filesystem. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")] pub volume_mounts: Option>, - /// Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated. + /// Container's working directory. + /// If not specified, the container runtime's default will be used, which + /// might be configured in the container image. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "workingDir")] pub working_dir: Option, } @@ -7328,7 +10644,15 @@ pub struct AerospikeClusterStatusPodSpecSidecars { pub struct AerospikeClusterStatusPodSpecSidecarsEnv { /// Name of the environment variable. Must be a C_IDENTIFIER. pub name: String, - /// Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". + /// Variable references $(VAR_NAME) are expanded + /// using the previously defined environment variables in the container and + /// any service environment variables. If a variable cannot be resolved, + /// the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + /// "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + /// Escaped references will never be expanded, regardless of whether the variable + /// exists or not. + /// Defaults to "". #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, /// Source for the environment variable's value. Cannot be used if value is not empty. @@ -7342,10 +10666,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFrom { /// Selects a key of a ConfigMap. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapKeyRef")] pub config_map_key_ref: Option, - /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + /// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")] pub field_ref: Option, - /// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + /// Selects a resource of the container: only resources limits and requests + /// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")] pub resource_field_ref: Option, /// Selects a key of a secret in the pod's namespace @@ -7358,7 +10684,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFrom { pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromConfigMapKeyRef { /// The key to select. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -7366,7 +10694,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromConfigMapKeyRef { pub optional: Option, } -/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. +/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, +/// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromFieldRef { /// Version of the schema the FieldPath is written in terms of, defaults to "v1". @@ -7377,7 +10706,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromFieldRef { pub field_path: String, } -/// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. +/// Selects a resource of the container: only resources limits and requests +/// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromResourceFieldRef { /// Container name: required for volumes, optional for env vars @@ -7395,7 +10725,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromResourceFieldRef { pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromSecretKeyRef { /// The key of the secret to select from. Must be a valid secret key. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -7420,7 +10752,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvFrom { /// The ConfigMap to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsEnvFromConfigMapRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -7431,7 +10765,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvFromConfigMapRef { /// The Secret to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsEnvFromSecretRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -7439,18 +10775,33 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvFromSecretRef { pub optional: Option, } -/// Actions that the management system should take in response to container lifecycle events. Cannot be updated. +/// Actions that the management system should take in response to container lifecycle events. +/// Cannot be updated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecycle { - /// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PostStart is called immediately after a container is created. If the handler fails, + /// the container is terminated and restarted according to its restart policy. + /// Other management of the container blocks until the hook completes. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "postStart")] pub post_start: Option, - /// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PreStop is called immediately before a container is terminated due to an + /// API request or management event such as liveness/startup probe failure, + /// preemption, resource contention, etc. The handler is not called if the + /// container crashes or exits. The Pod's termination grace period countdown begins before the + /// PreStop hook is executed. Regardless of the outcome of the handler, the + /// container will eventually terminate within the Pod's termination grace + /// period (unless delayed by finalizers). Other management of the container blocks until the hook completes + /// or until the termination grace period is reached. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "preStop")] pub pre_stop: Option, } -/// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PostStart is called immediately after a container is created. If the handler fails, +/// the container is terminated and restarted according to its restart policy. +/// Other management of the container blocks until the hook completes. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStart { /// Exec specifies the action to take. @@ -7462,7 +10813,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStart { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -7470,7 +10823,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStart { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7478,7 +10835,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7487,9 +10845,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7497,7 +10858,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7510,17 +10872,29 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PreStop is called immediately before a container is terminated due to an +/// API request or management event such as liveness/startup probe failure, +/// preemption, resource contention, etc. The handler is not called if the +/// container crashes or exits. The Pod's termination grace period countdown begins before the +/// PreStop hook is executed. Regardless of the outcome of the handler, the +/// container will eventually terminate within the Pod's termination grace +/// period (unless delayed by finalizers). Other management of the container blocks until the hook completes +/// or until the termination grace period is reached. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStop { /// Exec specifies the action to take. @@ -7532,7 +10906,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStop { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -7540,7 +10916,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStop { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7548,7 +10928,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7557,9 +10938,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7567,7 +10951,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7580,23 +10965,31 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container liveness. +/// Container will be restarted if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -7605,22 +10998,36 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -7628,7 +11035,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7638,8 +11049,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeExec { pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -7647,7 +11061,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7656,9 +11071,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7666,7 +11084,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7678,37 +11097,50 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerPort represents a network port in a single container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsPorts { - /// Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536. + /// Number of port to expose on the pod's IP address. + /// This must be a valid port number, 0 < x < 65536. #[serde(rename = "containerPort")] pub container_port: i32, /// What host IP to bind the external port to. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostIP")] pub host_ip: Option, - /// Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this. + /// Number of port to expose on the host. + /// If specified, this must be a valid port number, 0 < x < 65536. + /// If HostNetwork is specified, this must match ContainerPort. + /// Most containers do not need this. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPort")] pub host_port: Option, - /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. + /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each + /// named port in a pod must have a unique name. Name for the port that can be + /// referred to by services. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, - /// Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP". + /// Protocol for port. Must be UDP, TCP, or SCTP. + /// Defaults to "TCP". #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } -/// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container service readiness. +/// Container will be removed from service endpoints if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -7717,22 +11149,36 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -7740,7 +11186,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7750,8 +11200,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeExec { pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -7759,7 +11212,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7768,9 +11222,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7778,7 +11235,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7790,33 +11248,49 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerResizePolicy represents resource resize policy for the container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsResizePolicy { - /// Name of the resource to which this resource resize policy applies. Supported values: cpu, memory. + /// Name of the resource to which this resource resize policy applies. + /// Supported values: cpu, memory. #[serde(rename = "resourceName")] pub resource_name: String, - /// Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired. + /// Restart policy to apply when specified resource is resized. + /// If not specified, it defaults to NotRequired. #[serde(rename = "restartPolicy")] pub restart_policy: String, } -/// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ +/// Compute Resources required by this container. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -7824,49 +11298,95 @@ pub struct AerospikeClusterStatusPodSpecSidecarsResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } -/// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ +/// SecurityContext defines the security options the container should be run with. +/// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. +/// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextCapabilities { /// Added capabilities @@ -7877,7 +11397,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextCapabilities { pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -7894,42 +11418,71 @@ pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextSeLinuxOptions { pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// StartupProbe indicates that the Pod has successfully initialized. +/// If specified, no other probes are executed until this completes successfully. +/// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. +/// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, +/// when it might take a long time to load data or warm a cache, than during steady-state operation. +/// This cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -7938,22 +11491,36 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -7961,7 +11528,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7971,8 +11542,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeExec { pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -7980,7 +11554,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7989,9 +11564,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7999,7 +11577,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -8011,7 +11590,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } @@ -8028,46 +11609,67 @@ pub struct AerospikeClusterStatusPodSpecSidecarsVolumeDevices { /// VolumeMount describes a mounting of a Volume within a container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsVolumeMounts { - /// Path within the container at which the volume should be mounted. Must not contain ':'. + /// Path within the container at which the volume should be mounted. Must + /// not contain ':'. #[serde(rename = "mountPath")] pub mount_path: String, - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, /// This must match the Name of a Volume. pub name: String, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// Pods has Aerospike specific status of the pods. This is map instead of the conventional map as list convention to allow each pod to patch update its own status. The map key is the name of the pod. +/// Pods has Aerospike specific status of the pods. +/// This is map instead of the conventional map as list convention to allow each pod to patch update its own +/// status. The map key is the name of the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPods { /// Aerospike server instance summary for this pod. @@ -8076,10 +11678,13 @@ pub struct AerospikeClusterStatusPods { /// AerospikeConfigHash is ripemd160 hash of aerospikeConfig used by this pod #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeConfigHash")] pub aerospike_config_hash: Option, - /// DirtyVolumes is the list of volume names that are removed from aerospike namespaces and will be cleaned during init if they are reused in any namespace. + /// DirtyVolumes is the list of volume names that are removed + /// from aerospike namespaces and will be cleaned during init + /// if they are reused in any namespace. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dirtyVolumes")] pub dirty_volumes: Option>, - /// DynamicConfigUpdateStatus is the status of dynamic config update operation. Empty "" status means successful update. + /// DynamicConfigUpdateStatus is the status of dynamic config update operation. + /// Empty "" status means successful update. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dynamicConfigUpdateStatus")] pub dynamic_config_update_status: Option, /// HostExternalIP of the K8s host this pod is scheduled on. @@ -8094,7 +11699,8 @@ pub struct AerospikeClusterStatusPods { /// InitImage is the Aerospike init image this pod's init container is running. #[serde(default, skip_serializing_if = "Option::is_none", rename = "initImage")] pub init_image: Option, - /// InitializedVolumes is the list of volume names that have already been initialized. + /// InitializedVolumes is the list of volume names that have already been + /// initialized. #[serde(default, skip_serializing_if = "Option::is_none", rename = "initializedVolumes")] pub initialized_volumes: Option>, /// NetworkPolicyHash is ripemd160 hash of NetworkPolicy used by this pod @@ -8143,7 +11749,9 @@ pub struct AerospikeClusterStatusPodsAerospike { pub tls_name: Option, } -/// Pods has Aerospike specific status of the pods. This is map instead of the conventional map as list convention to allow each pod to patch update its own status. The map key is the name of the pod. +/// Pods has Aerospike specific status of the pods. +/// This is map instead of the conventional map as list convention to allow each pod to patch update its own +/// status. The map key is the name of the pod. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum AerospikeClusterStatusPodsDynamicConfigUpdateStatus { Failed, @@ -8152,10 +11760,19 @@ pub enum AerospikeClusterStatusPodsDynamicConfigUpdateStatus { KopiumEmpty, } -/// RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration +/// RackConfig Configures the operator to deploy rack aware Aerospike cluster. +/// Pods will be deployed in given racks based on given configuration #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfig { - /// MaxIgnorablePods is the maximum number/percentage of pending/failed pods in a rack that are ignored while assessing cluster stability. Pods identified using this value are not considered part of the cluster. Additionally, in SC mode clusters, these pods are removed from the roster. This is particularly useful when some pods are stuck in pending/failed state due to any scheduling issues and cannot be fixed by simply updating the CR. It enables the operator to perform specific operations on the cluster, like changing Aerospike configurations, without being hindered by these problematic pods. Remember to set MaxIgnorablePods back to 0 once the required operation is done. This makes sure that later on, all pods are properly counted when evaluating the cluster stability. + /// MaxIgnorablePods is the maximum number/percentage of pending/failed pods in a rack that are ignored while + /// assessing cluster stability. Pods identified using this value are not considered part of the cluster. + /// Additionally, in SC mode clusters, these pods are removed from the roster. + /// This is particularly useful when some pods are stuck in pending/failed state due to any scheduling issues and + /// cannot be fixed by simply updating the CR. + /// It enables the operator to perform specific operations on the cluster, like changing Aerospike configurations, + /// without being hindered by these problematic pods. + /// Remember to set MaxIgnorablePods back to 0 once the required operation is done. + /// This makes sure that later on, all pods are properly counted when evaluating the cluster stability. #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxIgnorablePods")] pub max_ignorable_pods: Option, /// List of Aerospike namespaces for which rack feature will be enabled @@ -8178,7 +11795,8 @@ pub struct AerospikeClusterStatusRackConfigRacks { /// AerospikeConfig overrides the common AerospikeConfig for this Rack. This is merged with global Aerospike config. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeConfig")] pub aerospike_config: Option>, - /// Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global Aerospike config + /// Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global + /// Aerospike config #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveAerospikeConfig")] pub effective_aerospike_config: Option>, /// Effective/operative PodSpec. The resultant is user input if specified else global PodSpec @@ -8195,7 +11813,8 @@ pub struct AerospikeClusterStatusRackConfigRacks { /// PodSpec to use for the pods in this rack. This value overwrites the global storage config #[serde(default, skip_serializing_if = "Option::is_none", rename = "podSpec")] pub pod_spec: Option, - /// RackLabel for setting rack affinity. Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: } + /// RackLabel for setting rack affinity. + /// Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: } #[serde(default, skip_serializing_if = "Option::is_none", rename = "rackLabel")] pub rack_label: Option, /// Region name for setting rack affinity. Rack pods will be deployed to given Region @@ -8240,15 +11859,28 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -8268,31 +11900,47 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffi pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -8300,7 +11948,9 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffi pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -8311,26 +11961,38 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffi pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -8338,10 +12000,24 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffi /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -8352,144 +12028,244 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffin /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -8497,10 +12273,24 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffin /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -8511,164 +12301,274 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiA /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } @@ -8696,7 +12596,8 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -8708,10 +12609,12 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageBlockVolumePolic /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -8771,7 +12674,8 @@ pub enum AerospikeClusterStatusRackConfigRacksEffectiveStorageBlockVolumePolicyW /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -8783,10 +12687,12 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageFilesystemVolume /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -8848,7 +12754,8 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -8863,7 +12770,8 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -8874,7 +12782,8 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -8890,16 +12799,25 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesAerospike #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -8942,16 +12860,25 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesInitConta #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -8982,16 +12909,25 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSidecars #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -9002,14 +12938,19 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -9017,13 +12958,27 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -9036,20 +12991,37 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceCon pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -9057,7 +13029,8 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceEmp /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -9091,37 +13064,61 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourcePer /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -9131,10 +13128,18 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceSec pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -9181,15 +13186,28 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -9209,31 +13227,47 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityPrefe pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -9241,7 +13275,9 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequi pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -9252,26 +13288,38 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequi pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -9279,10 +13327,24 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequi /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -9293,144 +13355,244 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPrefer /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -9438,10 +13600,24 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequir /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -9452,164 +13628,274 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPr /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } @@ -9637,7 +13923,8 @@ pub struct AerospikeClusterStatusRackConfigRacksStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -9649,10 +13936,12 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageBlockVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -9712,7 +14001,8 @@ pub enum AerospikeClusterStatusRackConfigRacksStorageBlockVolumePolicyWipeMethod /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -9724,10 +14014,12 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageFilesystemVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -9789,7 +14081,8 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -9804,7 +14097,8 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -9815,7 +14109,8 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -9831,16 +14126,25 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesAerospike { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -9883,16 +14187,25 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesInitContainers { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -9923,16 +14236,25 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSidecars { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -9943,14 +14265,19 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -9958,13 +14285,27 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -9977,20 +14318,37 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceConfigMap { pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -9998,7 +14356,8 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceEmptyDir { /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -10032,37 +14391,61 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourcePersistentVo /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -10072,10 +14455,18 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceSecret { pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -10091,18 +14482,31 @@ pub enum AerospikeClusterStatusRackConfigRacksStorageVolumesWipeMethod { DeleteFiles, } -/// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Deprecated: Resources field is now part of containerSpec +/// Define resources requests and limits for Aerospike Server Container. +/// Please contact aerospike for proper sizing exercise +/// Only Memory and Cpu resources can be given +/// Deprecated: Resources field is now part of containerSpec #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -10110,24 +14514,30 @@ pub struct AerospikeClusterStatusResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } /// SeedsFinderServices describes services which are used for seeding Aerospike nodes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusSeedsFinderServices { - /// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. + /// LoadBalancer created to discover Aerospike Cluster nodes from outside of + /// Kubernetes cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancer")] pub load_balancer: Option, } -/// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. +/// LoadBalancer created to discover Aerospike Cluster nodes from outside of +/// Kubernetes cluster. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusSeedsFinderServicesLoadBalancer { #[serde(default, skip_serializing_if = "Option::is_none")] pub annotations: Option>, - /// ServiceExternalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's "externally-facing" addresses (NodePorts, ExternalIPs, and LoadBalancer IPs. + /// ServiceExternalTrafficPolicy describes how nodes distribute service traffic they + /// receive on one of the Service's "externally-facing" addresses (NodePorts, ExternalIPs, + /// and LoadBalancer IPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "externalTrafficPolicy")] pub external_traffic_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancerSourceRanges")] @@ -10138,12 +14548,14 @@ pub struct AerospikeClusterStatusSeedsFinderServicesLoadBalancer { /// The name of the port exposed on load balancer service. #[serde(default, skip_serializing_if = "Option::is_none", rename = "portName")] pub port_name: Option, - /// TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. If there is no tls port configured then regular port from network.service is used. + /// TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. + /// If there is no tls port configured then regular port from network.service is used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetPort")] pub target_port: Option, } -/// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. +/// LoadBalancer created to discover Aerospike Cluster nodes from outside of +/// Kubernetes cluster. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum AerospikeClusterStatusSeedsFinderServicesLoadBalancerExternalTrafficPolicy { Local, @@ -10173,7 +14585,8 @@ pub struct AerospikeClusterStatusStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -10185,10 +14598,12 @@ pub struct AerospikeClusterStatusStorageBlockVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -10248,7 +14663,8 @@ pub enum AerospikeClusterStatusStorageBlockVolumePolicyWipeMethod { /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -10260,10 +14676,12 @@ pub struct AerospikeClusterStatusStorageFilesystemVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -10325,7 +14743,8 @@ pub struct AerospikeClusterStatusStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -10340,7 +14759,8 @@ pub struct AerospikeClusterStatusStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -10351,7 +14771,8 @@ pub struct AerospikeClusterStatusStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -10367,16 +14788,25 @@ pub struct AerospikeClusterStatusStorageVolumesAerospike { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -10419,16 +14849,25 @@ pub struct AerospikeClusterStatusStorageVolumesInitContainers { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -10459,16 +14898,25 @@ pub struct AerospikeClusterStatusStorageVolumesSidecars { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -10479,14 +14927,19 @@ pub struct AerospikeClusterStatusStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -10494,13 +14947,27 @@ pub struct AerospikeClusterStatusStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -10513,20 +14980,37 @@ pub struct AerospikeClusterStatusStorageVolumesSourceConfigMap { pub struct AerospikeClusterStatusStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -10534,7 +15018,8 @@ pub struct AerospikeClusterStatusStorageVolumesSourceEmptyDir { /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -10568,37 +15053,61 @@ pub struct AerospikeClusterStatusStorageVolumesSourcePersistentVolumeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -10608,10 +15117,18 @@ pub struct AerospikeClusterStatusStorageVolumesSourceSecret { pub struct AerospikeClusterStatusStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -10630,10 +15147,12 @@ pub enum AerospikeClusterStatusStorageVolumesWipeMethod { /// ValidationPolicy controls validation of the Aerospike cluster resource. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusValidationPolicy { - /// skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. Defaults to false. + /// skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. + /// Defaults to false. #[serde(rename = "skipWorkDirValidate")] pub skip_work_dir_validate: bool, - /// ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. Defaults to false. + /// ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. + /// Defaults to false. #[serde(rename = "skipXdrDlogFileValidate")] pub skip_xdr_dlog_file_validate: bool, } diff --git a/kube-custom-resources-rs/src/asdb_aerospike_com/v1beta1/aerospikeclusters.rs b/kube-custom-resources-rs/src/asdb_aerospike_com/v1beta1/aerospikeclusters.rs index f9943585c..55ff32a9c 100644 --- a/kube-custom-resources-rs/src/asdb_aerospike_com/v1beta1/aerospikeclusters.rs +++ b/kube-custom-resources-rs/src/asdb_aerospike_com/v1beta1/aerospikeclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aerospike/aerospike-kubernetes-operator/asdb.aerospike.com/v1beta1/aerospikeclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -37,13 +37,15 @@ pub struct AerospikeClusterSpec { /// Specify additional configuration for the Aerospike pods #[serde(default, skip_serializing_if = "Option::is_none", rename = "podSpec")] pub pod_spec: Option, - /// RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration + /// RackConfig Configures the operator to deploy rack aware Aerospike cluster. + /// Pods will be deployed in given racks based on given configuration #[serde(default, skip_serializing_if = "Option::is_none", rename = "rackConfig")] pub rack_config: Option, /// RosterNodeBlockList is a list of blocked nodeIDs from roster in a strong-consistency setup #[serde(default, skip_serializing_if = "Option::is_none", rename = "rosterNodeBlockList")] pub roster_node_block_list: Option>, - /// SeedsFinderServices creates additional Kubernetes service that allow clients to discover Aerospike cluster nodes. + /// SeedsFinderServices creates additional Kubernetes service that allow + /// clients to discover Aerospike cluster nodes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seedsFinderServices")] pub seeds_finder_services: Option, /// Aerospike cluster size @@ -101,7 +103,8 @@ pub struct AerospikeClusterAerospikeAccessControlUsers { pub name: String, /// Roles is the list of roles granted to the user. pub roles: Vec, - /// SecretName has secret info created by user. User needs to create this secret from password literal. eg: kubectl create secret generic dev-db-secret --from-literal=password='password' + /// SecretName has secret info created by user. User needs to create this secret from password literal. + /// eg: kubectl create secret generic dev-db-secret --from-literal=password='password' #[serde(rename = "secretName")] pub secret_name: String, } @@ -109,40 +112,78 @@ pub struct AerospikeClusterAerospikeAccessControlUsers { /// AerospikeNetworkPolicy specifies how clients and tools access the Aerospike cluster. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterAerospikeNetworkPolicy { - /// AccessType is the type of network address to use for Aerospike access address. Defaults to hostInternal. + /// AccessType is the type of network address to use for Aerospike access address. + /// Defaults to hostInternal. #[serde(default, skip_serializing_if = "Option::is_none")] pub access: Option, - /// AlternateAccessType is the type of network address to use for Aerospike alternate access address. Defaults to hostExternal. + /// AlternateAccessType is the type of network address to use for Aerospike alternate access address. + /// Defaults to hostExternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "alternateAccess")] pub alternate_access: Option, - /// CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' access type. + /// CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' access type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "customAccessNetworkNames")] pub custom_access_network_names: Option>, - /// CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' alternateAccess type + /// CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike + /// alternate access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' alternateAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customAlternateAccessNetworkNames")] pub custom_alternate_access_network_names: Option>, - /// CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' fabric type + /// CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' fabric type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customFabricNetworkNames")] pub custom_fabric_network_names: Option>, - /// CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAccess type + /// CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' tlsAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSAccessNetworkNames")] pub custom_tls_access_network_names: Option>, - /// CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAlternateAccess type + /// CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS + /// alternate access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' tlsAlternateAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSAlternateAccessNetworkNames")] pub custom_tls_alternate_access_network_names: Option>, - /// CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsFabric type + /// CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network + /// interfaces to the pod. + /// Required with 'customInterface' tlsFabric type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSFabricNetworkNames")] pub custom_tls_fabric_network_names: Option>, - /// FabricType is the type of network address to use for Aerospike fabric address. Defaults is empty meaning all interfaces 'any'. + /// FabricType is the type of network address to use for Aerospike fabric address. + /// Defaults is empty meaning all interfaces 'any'. #[serde(default, skip_serializing_if = "Option::is_none")] pub fabric: Option, - /// TLSAccessType is the type of network address to use for Aerospike TLS access address. Defaults to hostInternal. + /// TLSAccessType is the type of network address to use for Aerospike TLS access address. + /// Defaults to hostInternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsAccess")] pub tls_access: Option, - /// TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. Defaults to hostExternal. + /// TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. + /// Defaults to hostExternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsAlternateAccess")] pub tls_alternate_access: Option, - /// TLSFabricType is the type of network address to use for Aerospike TLS fabric address. Defaults is empty meaning all interfaces 'any'. + /// TLSFabricType is the type of network address to use for Aerospike TLS fabric address. + /// Defaults is empty meaning all interfaces 'any'. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsFabric")] pub tls_fabric: Option, } @@ -224,7 +265,9 @@ pub enum AerospikeClusterAerospikeNetworkPolicyTlsFabric { /// Certificates to connect to Aerospike. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterOperatorClientCert { - /// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem. + /// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike + /// cluster. + /// All paths are on operator's filesystem. #[serde(default, skip_serializing_if = "Option::is_none", rename = "certPathInOperator")] pub cert_path_in_operator: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretCertSource")] @@ -234,7 +277,9 @@ pub struct AerospikeClusterOperatorClientCert { pub tls_client_name: Option, } -/// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem. +/// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike +/// cluster. +/// All paths are on operator's filesystem. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterOperatorClientCertCertPathInOperator { #[serde(default, skip_serializing_if = "Option::is_none", rename = "caCertsPath")] @@ -272,28 +317,35 @@ pub struct AerospikeClusterOperatorClientCertSecretCertSourceCaCertsSource { /// Specify additional configuration for the Aerospike pods #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpec { - /// AerospikeContainerSpec configures the aerospike-server container created by the operator. + /// AerospikeContainerSpec configures the aerospike-server container + /// created by the operator. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeContainer")] pub aerospike_container: Option, - /// AerospikeInitContainerSpec configures the aerospike-init container created by the operator. + /// AerospikeInitContainerSpec configures the aerospike-init container + /// created by the operator. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeInitContainer")] pub aerospike_init_container: Option, /// Affinity rules for pod placement. #[serde(default, skip_serializing_if = "Option::is_none")] pub affinity: Option, - /// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None` + /// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. + /// This is required field when dnsPolicy is set to `None` #[serde(default, skip_serializing_if = "Option::is_none", rename = "dnsConfig")] pub dns_config: Option, - /// DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet + /// DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. + /// If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet #[serde(default, skip_serializing_if = "Option::is_none", rename = "dnsPolicy")] pub dns_policy: Option, /// Effective value of the DNSPolicy #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveDNSPolicy")] pub effective_dns_policy: Option, - /// HostNetwork enables host networking for the pod. To enable hostNetwork multiPodPerHost must be false. + /// HostNetwork enables host networking for the pod. + /// To enable hostNetwork multiPodPerHost must be false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostNetwork")] pub host_network: Option, - /// ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod + /// ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of + /// the images used by this PodSpec. + /// More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] pub image_pull_secrets: Option>, /// InitContainers to add to the pods. @@ -302,14 +354,25 @@ pub struct AerospikeClusterPodSpec { /// MetaData to add to the pod. #[serde(default, skip_serializing_if = "Option::is_none")] pub metadata: Option, - /// If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod. NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. - /// If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user. + /// If set true then multiple pods can be created per Kubernetes Node. + /// This will create a NodePort service for each Pod. + /// NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , + /// and any traffic that is sent to this port is forwarded to the service. + /// Here service picks a random port in range (30000-32767), so these port should be open. + /// + /// + /// If set false then only single pod can be created per Kubernetes Node. + /// This will create Pods using hostPort setting. + /// The container port will be exposed to the external network at :, + /// where the hostIP is the IP address of the Kubernetes Node where the container is running and + /// the hostPort is the port requested by the user. #[serde(default, skip_serializing_if = "Option::is_none", rename = "multiPodPerHost")] pub multi_pod_per_host: Option, /// NodeSelector constraints for this pod. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeSelector")] pub node_selector: Option>, - /// SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field. + /// SecurityContext holds pod-level security attributes and common container settings. + /// Optional: Defaults to empty. See type description for default values of each field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, /// Sidecars to add to the pod. @@ -320,10 +383,14 @@ pub struct AerospikeClusterPodSpec { pub tolerations: Option>, } -/// AerospikeContainerSpec configures the aerospike-server container created by the operator. +/// AerospikeContainerSpec configures the aerospike-server container +/// created by the operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainer { - /// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. + /// Define resources requests and limits for Aerospike Server Container. + /// Please contact aerospike for proper sizing exercise + /// Only Memory and Cpu resources can be given + /// Resources.Limits should be more than Resources.Requests. #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, /// SecurityContext that will be added to aerospike-server container created by operator. @@ -331,18 +398,31 @@ pub struct AerospikeClusterPodSpecAerospikeContainer { pub security_context: Option, } -/// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. +/// Define resources requests and limits for Aerospike Server Container. +/// Please contact aerospike for proper sizing exercise +/// Only Memory and Cpu resources can be given +/// Resources.Limits should be more than Resources.Requests. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -350,49 +430,93 @@ pub struct AerospikeClusterPodSpecAerospikeContainerResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } /// SecurityContext that will be added to aerospike-server container created by operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextCapabilities { /// Added capabilities @@ -403,7 +527,11 @@ pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextCapabilities pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -420,42 +548,68 @@ pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextSeLinuxOption pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeContainerSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// AerospikeInitContainerSpec configures the aerospike-init container created by the operator. +/// AerospikeInitContainerSpec configures the aerospike-init container +/// created by the operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainer { - /// ImageRegistry is the name of image registry for aerospike-init container image ImageRegistry, e.g. docker.io, redhat.access.com + /// ImageRegistry is the name of image registry for aerospike-init container image + /// ImageRegistry, e.g. docker.io, redhat.access.com #[serde(default, skip_serializing_if = "Option::is_none", rename = "imageRegistry")] pub image_registry: Option, - /// Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. + /// Define resources requests and limits for Aerospike init Container. + /// Only Memory and Cpu resources can be given + /// Resources.Limits should be more than Resources.Requests. #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, /// SecurityContext that will be added to aerospike-init container created by operator. @@ -463,18 +617,30 @@ pub struct AerospikeClusterPodSpecAerospikeInitContainer { pub security_context: Option, } -/// Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. +/// Define resources requests and limits for Aerospike init Container. +/// Only Memory and Cpu resources can be given +/// Resources.Limits should be more than Resources.Requests. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -482,49 +648,93 @@ pub struct AerospikeClusterPodSpecAerospikeInitContainerResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } /// SecurityContext that will be added to aerospike-init container created by operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextCapabilities { /// Added capabilities @@ -535,7 +745,11 @@ pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextCapabilit pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -552,31 +766,53 @@ pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextSeLinuxOp pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAerospikeInitContainerSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } @@ -598,15 +834,28 @@ pub struct AerospikeClusterPodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -626,31 +875,47 @@ pub struct AerospikeClusterPodSpecAffinityNodeAffinityPreferredDuringSchedulingI pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -658,7 +923,9 @@ pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIg pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -669,26 +936,38 @@ pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIg pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -696,10 +975,24 @@ pub struct AerospikeClusterPodSpecAffinityNodeAffinityRequiredDuringSchedulingIg /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -710,144 +1003,244 @@ pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIg /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -855,10 +1248,24 @@ pub struct AerospikeClusterPodSpecAffinityPodAffinityRequiredDuringSchedulingIgn /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -869,158 +1276,266 @@ pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringScheduli /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None` +/// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. +/// This is required field when dnsPolicy is set to `None` #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecDnsConfig { - /// A list of DNS name server IP addresses. This will be appended to the base nameservers generated from DNSPolicy. Duplicated nameservers will be removed. + /// A list of DNS name server IP addresses. + /// This will be appended to the base nameservers generated from DNSPolicy. + /// Duplicated nameservers will be removed. #[serde(default, skip_serializing_if = "Option::is_none")] pub nameservers: Option>, - /// A list of DNS resolver options. This will be merged with the base options generated from DNSPolicy. Duplicated entries will be removed. Resolution options given in Options will override those that appear in the base DNSPolicy. + /// A list of DNS resolver options. + /// This will be merged with the base options generated from DNSPolicy. + /// Duplicated entries will be removed. Resolution options given in Options + /// will override those that appear in the base DNSPolicy. #[serde(default, skip_serializing_if = "Option::is_none")] pub options: Option>, - /// A list of DNS search domains for host-name lookup. This will be appended to the base search paths generated from DNSPolicy. Duplicated search paths will be removed. + /// A list of DNS search domains for host-name lookup. + /// This will be appended to the base search paths generated from DNSPolicy. + /// Duplicated search paths will be removed. #[serde(default, skip_serializing_if = "Option::is_none")] pub searches: Option>, } @@ -1035,10 +1550,13 @@ pub struct AerospikeClusterPodSpecDnsConfigOptions { pub value: Option, } -/// LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. +/// LocalObjectReference contains enough information to let you locate the +/// referenced object inside the same namespace. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecImagePullSecrets { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -1046,75 +1564,166 @@ pub struct AerospikeClusterPodSpecImagePullSecrets { /// A single application container that you want to run within a pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainers { - /// Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Arguments to the entrypoint. + /// The container image's CMD is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub args: Option>, - /// Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Entrypoint array. Not executed within a shell. + /// The container image's ENTRYPOINT is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, - /// List of environment variables to set in the container. Cannot be updated. + /// List of environment variables to set in the container. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub env: Option>, - /// List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. + /// List of sources to populate environment variables in the container. + /// The keys defined within a source must be a C_IDENTIFIER. All invalid keys + /// will be reported as an event when the container is starting. When a key exists in multiple + /// sources, the value associated with the last source will take precedence. + /// Values defined by an Env with a duplicate key will take precedence. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")] pub env_from: Option>, - /// Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets. + /// Container image name. + /// More info: https://kubernetes.io/docs/concepts/containers/images + /// This field is optional to allow higher level config management to default or override + /// container images in workload controllers like Deployments and StatefulSets. #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, - /// Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images + /// Image pull policy. + /// One of Always, Never, IfNotPresent. + /// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")] pub image_pull_policy: Option, - /// Actions that the management system should take in response to container lifecycle events. Cannot be updated. + /// Actions that the management system should take in response to container lifecycle events. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub lifecycle: Option, - /// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container liveness. + /// Container will be restarted if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "livenessProbe")] pub liveness_probe: Option, - /// Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated. + /// Name of the container specified as a DNS_LABEL. + /// Each container in a pod must have a unique name (DNS_LABEL). + /// Cannot be updated. pub name: String, - /// List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated. + /// List of ports to expose from the container. Not specifying a port here + /// DOES NOT prevent that port from being exposed. Any port which is + /// listening on the default "0.0.0.0" address inside a container will be + /// accessible from the network. + /// Modifying this array with strategic merge patch may corrupt the data. + /// For more information See https://github.com/kubernetes/kubernetes/issues/108255. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container service readiness. + /// Container will be removed from service endpoints if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, /// Resources resize policy for the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] pub resize_policy: Option>, - /// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Compute Resources required by this container. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, - /// RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is "Always". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as "Always" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy "Always" will be shut down. This lifecycle differs from normal init containers and is often referred to as a "sidecar" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed. + /// RestartPolicy defines the restart behavior of individual containers in a pod. + /// This field may only be set for init containers, and the only allowed value is "Always". + /// For non-init containers or when this field is not specified, + /// the restart behavior is defined by the Pod's restart policy and the container type. + /// Setting the RestartPolicy as "Always" for the init container will have the following effect: + /// this init container will be continually restarted on + /// exit until all regular containers have terminated. Once all regular + /// containers have completed, all init containers with restartPolicy "Always" + /// will be shut down. This lifecycle differs from normal init containers and + /// is often referred to as a "sidecar" container. Although this init + /// container still starts in the init container sequence, it does not wait + /// for the container to complete before proceeding to the next init + /// container. Instead, the next init container starts immediately after this + /// init container is started, or after any startupProbe has successfully + /// completed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, - /// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ + /// SecurityContext defines the security options the container should be run with. + /// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. + /// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, - /// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// StartupProbe indicates that the Pod has successfully initialized. + /// If specified, no other probes are executed until this completes successfully. + /// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. + /// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, + /// when it might take a long time to load data or warm a cache, than during steady-state operation. + /// This cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] pub startup_probe: Option, - /// Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. + /// Whether this container should allocate a buffer for stdin in the container runtime. If this + /// is not set, reads from stdin in the container will always result in EOF. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub stdin: Option, - /// Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false + /// Whether the container runtime should close the stdin channel after it has been opened by + /// a single attach. When stdin is true the stdin stream will remain open across multiple attach + /// sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the + /// first client attaches to stdin, and then remains open and accepts data until the client disconnects, + /// at which time stdin is closed and remains closed until the container is restarted. If this + /// flag is false, a container processes that reads from stdin will never receive an EOF. + /// Default is false #[serde(default, skip_serializing_if = "Option::is_none", rename = "stdinOnce")] pub stdin_once: Option, - /// Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. + /// Optional: Path at which the file to which the container's termination message + /// will be written is mounted into the container's filesystem. + /// Message written is intended to be brief final status, such as an assertion failure message. + /// Will be truncated by the node if greater than 4096 bytes. The total message length across + /// all containers will be limited to 12kb. + /// Defaults to /dev/termination-log. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePath")] pub termination_message_path: Option, - /// Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. + /// Indicate how the termination message should be populated. File will use the contents of + /// terminationMessagePath to populate the container status message on both success and failure. + /// FallbackToLogsOnError will use the last chunk of container log output if the termination + /// message file is empty and the container exited with an error. + /// The log output is limited to 2048 bytes or 80 lines, whichever is smaller. + /// Defaults to File. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePolicy")] pub termination_message_policy: Option, - /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. + /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub tty: Option, /// volumeDevices is the list of block devices to be used by the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeDevices")] pub volume_devices: Option>, - /// Pod volumes to mount into the container's filesystem. Cannot be updated. + /// Pod volumes to mount into the container's filesystem. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")] pub volume_mounts: Option>, - /// Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated. + /// Container's working directory. + /// If not specified, the container runtime's default will be used, which + /// might be configured in the container image. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "workingDir")] pub working_dir: Option, } @@ -1124,7 +1733,15 @@ pub struct AerospikeClusterPodSpecInitContainers { pub struct AerospikeClusterPodSpecInitContainersEnv { /// Name of the environment variable. Must be a C_IDENTIFIER. pub name: String, - /// Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". + /// Variable references $(VAR_NAME) are expanded + /// using the previously defined environment variables in the container and + /// any service environment variables. If a variable cannot be resolved, + /// the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + /// "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + /// Escaped references will never be expanded, regardless of whether the variable + /// exists or not. + /// Defaults to "". #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, /// Source for the environment variable's value. Cannot be used if value is not empty. @@ -1138,10 +1755,12 @@ pub struct AerospikeClusterPodSpecInitContainersEnvValueFrom { /// Selects a key of a ConfigMap. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapKeyRef")] pub config_map_key_ref: Option, - /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + /// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")] pub field_ref: Option, - /// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + /// Selects a resource of the container: only resources limits and requests + /// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")] pub resource_field_ref: Option, /// Selects a key of a secret in the pod's namespace @@ -1154,7 +1773,9 @@ pub struct AerospikeClusterPodSpecInitContainersEnvValueFrom { pub struct AerospikeClusterPodSpecInitContainersEnvValueFromConfigMapKeyRef { /// The key to select. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -1162,7 +1783,8 @@ pub struct AerospikeClusterPodSpecInitContainersEnvValueFromConfigMapKeyRef { pub optional: Option, } -/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. +/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, +/// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersEnvValueFromFieldRef { /// Version of the schema the FieldPath is written in terms of, defaults to "v1". @@ -1173,7 +1795,8 @@ pub struct AerospikeClusterPodSpecInitContainersEnvValueFromFieldRef { pub field_path: String, } -/// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. +/// Selects a resource of the container: only resources limits and requests +/// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersEnvValueFromResourceFieldRef { /// Container name: required for volumes, optional for env vars @@ -1191,7 +1814,9 @@ pub struct AerospikeClusterPodSpecInitContainersEnvValueFromResourceFieldRef { pub struct AerospikeClusterPodSpecInitContainersEnvValueFromSecretKeyRef { /// The key of the secret to select from. Must be a valid secret key. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -1216,7 +1841,9 @@ pub struct AerospikeClusterPodSpecInitContainersEnvFrom { /// The ConfigMap to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersEnvFromConfigMapRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -1227,7 +1854,9 @@ pub struct AerospikeClusterPodSpecInitContainersEnvFromConfigMapRef { /// The Secret to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersEnvFromSecretRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -1235,18 +1864,33 @@ pub struct AerospikeClusterPodSpecInitContainersEnvFromSecretRef { pub optional: Option, } -/// Actions that the management system should take in response to container lifecycle events. Cannot be updated. +/// Actions that the management system should take in response to container lifecycle events. +/// Cannot be updated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecycle { - /// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PostStart is called immediately after a container is created. If the handler fails, + /// the container is terminated and restarted according to its restart policy. + /// Other management of the container blocks until the hook completes. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "postStart")] pub post_start: Option, - /// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PreStop is called immediately before a container is terminated due to an + /// API request or management event such as liveness/startup probe failure, + /// preemption, resource contention, etc. The handler is not called if the + /// container crashes or exits. The Pod's termination grace period countdown begins before the + /// PreStop hook is executed. Regardless of the outcome of the handler, the + /// container will eventually terminate within the Pod's termination grace + /// period (unless delayed by finalizers). Other management of the container blocks until the hook completes + /// or until the termination grace period is reached. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "preStop")] pub pre_stop: Option, } -/// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PostStart is called immediately after a container is created. If the handler fails, +/// the container is terminated and restarted according to its restart policy. +/// Other management of the container blocks until the hook completes. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStart { /// Exec specifies the action to take. @@ -1258,7 +1902,9 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStart { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -1266,7 +1912,11 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStart { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -1274,7 +1924,8 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -1283,9 +1934,12 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -1293,7 +1947,8 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -1306,17 +1961,29 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePostStartTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PreStop is called immediately before a container is terminated due to an +/// API request or management event such as liveness/startup probe failure, +/// preemption, resource contention, etc. The handler is not called if the +/// container crashes or exits. The Pod's termination grace period countdown begins before the +/// PreStop hook is executed. Regardless of the outcome of the handler, the +/// container will eventually terminate within the Pod's termination grace +/// period (unless delayed by finalizers). Other management of the container blocks until the hook completes +/// or until the termination grace period is reached. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStop { /// Exec specifies the action to take. @@ -1328,7 +1995,9 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStop { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -1336,7 +2005,11 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStop { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -1344,7 +2017,8 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -1353,9 +2027,12 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -1363,7 +2040,8 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -1376,23 +2054,31 @@ pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLifecyclePreStopTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container liveness. +/// Container will be restarted if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLivenessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -1401,22 +2087,36 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -1424,7 +2124,11 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLivenessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -1434,8 +2138,11 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbeExec { pub struct AerospikeClusterPodSpecInitContainersLivenessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -1443,7 +2150,8 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLivenessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -1452,9 +2160,12 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -1462,7 +2173,8 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersLivenessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -1474,37 +2186,50 @@ pub struct AerospikeClusterPodSpecInitContainersLivenessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerPort represents a network port in a single container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersPorts { - /// Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536. + /// Number of port to expose on the pod's IP address. + /// This must be a valid port number, 0 < x < 65536. #[serde(rename = "containerPort")] pub container_port: i32, /// What host IP to bind the external port to. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostIP")] pub host_ip: Option, - /// Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this. + /// Number of port to expose on the host. + /// If specified, this must be a valid port number, 0 < x < 65536. + /// If HostNetwork is specified, this must match ContainerPort. + /// Most containers do not need this. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPort")] pub host_port: Option, - /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. + /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each + /// named port in a pod must have a unique name. Name for the port that can be + /// referred to by services. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, - /// Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP". + /// Protocol for port. Must be UDP, TCP, or SCTP. + /// Defaults to "TCP". #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } -/// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container service readiness. +/// Container will be removed from service endpoints if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersReadinessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -1513,22 +2238,36 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -1536,7 +2275,11 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersReadinessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -1546,8 +2289,11 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbeExec { pub struct AerospikeClusterPodSpecInitContainersReadinessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -1555,7 +2301,8 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersReadinessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -1564,9 +2311,12 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -1574,7 +2324,8 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersReadinessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -1586,33 +2337,49 @@ pub struct AerospikeClusterPodSpecInitContainersReadinessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerResizePolicy represents resource resize policy for the container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersResizePolicy { - /// Name of the resource to which this resource resize policy applies. Supported values: cpu, memory. + /// Name of the resource to which this resource resize policy applies. + /// Supported values: cpu, memory. #[serde(rename = "resourceName")] pub resource_name: String, - /// Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired. + /// Restart policy to apply when specified resource is resized. + /// If not specified, it defaults to NotRequired. #[serde(rename = "restartPolicy")] pub restart_policy: String, } -/// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ +/// Compute Resources required by this container. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -1620,49 +2387,95 @@ pub struct AerospikeClusterPodSpecInitContainersResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } -/// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ +/// SecurityContext defines the security options the container should be run with. +/// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. +/// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersSecurityContextCapabilities { /// Added capabilities @@ -1673,7 +2486,11 @@ pub struct AerospikeClusterPodSpecInitContainersSecurityContextCapabilities { pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -1690,42 +2507,71 @@ pub struct AerospikeClusterPodSpecInitContainersSecurityContextSeLinuxOptions { pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// StartupProbe indicates that the Pod has successfully initialized. +/// If specified, no other probes are executed until this completes successfully. +/// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. +/// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, +/// when it might take a long time to load data or warm a cache, than during steady-state operation. +/// This cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersStartupProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -1734,22 +2580,36 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -1757,7 +2617,11 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersStartupProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -1767,8 +2631,11 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbeExec { pub struct AerospikeClusterPodSpecInitContainersStartupProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -1776,7 +2643,8 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersStartupProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -1785,9 +2653,12 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -1795,7 +2666,8 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersStartupProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -1807,7 +2679,9 @@ pub struct AerospikeClusterPodSpecInitContainersStartupProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } @@ -1824,21 +2698,30 @@ pub struct AerospikeClusterPodSpecInitContainersVolumeDevices { /// VolumeMount describes a mounting of a Volume within a container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecInitContainersVolumeMounts { - /// Path within the container at which the volume should be mounted. Must not contain ':'. + /// Path within the container at which the volume should be mounted. Must + /// not contain ':'. #[serde(rename = "mountPath")] pub mount_path: String, - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, /// This must match the Name of a Volume. pub name: String, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -1854,44 +2737,97 @@ pub struct AerospikeClusterPodSpecMetadata { pub labels: Option>, } -/// SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field. +/// SecurityContext holds pod-level security attributes and common container settings. +/// Optional: Defaults to empty. See type description for default values of each field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSecurityContext { - /// A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: - /// 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- - /// If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows. + /// A special supplemental group that applies to all containers in a pod. + /// Some volume types allow the Kubelet to change the ownership of that volume + /// to be owned by the pod: + /// + /// + /// 1. The owning GID will be the FSGroup + /// 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) + /// 3. The permission bits are OR'd with rw-rw---- + /// + /// + /// If unset, the Kubelet will not modify the ownership and permissions of any volume. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] pub fs_group: Option, - /// fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. Note that this field cannot be set when spec.os.name is windows. + /// fsGroupChangePolicy defines behavior of changing ownership and permission of the volume + /// before being exposed inside Pod. This field will only apply to + /// volume types which support fsGroup based ownership(and permissions). + /// It will have no effect on ephemeral volume types such as: secret, configmaps + /// and emptydir. + /// Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupChangePolicy")] pub fs_group_change_policy: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence + /// for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence + /// for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to all containers. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in SecurityContext. If set in + /// both SecurityContext and PodSecurityContext, the value specified in SecurityContext + /// takes precedence for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by the containers in this pod. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// A list of groups applied to the first process run in each container, in addition to the container's primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows. + /// A list of groups applied to the first process run in each container, in addition + /// to the container's primary GID, the fsGroup (if specified), and group memberships + /// defined in the container image for the uid of the container process. If unspecified, + /// no additional groups are added to any container. Note that group memberships + /// defined in the container image for the uid of the container process are still effective, + /// even if they are not included in this list. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")] pub supplemental_groups: Option>, - /// Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows. + /// Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported + /// sysctls (by the container runtime) might fail to launch. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub sysctls: Option>, - /// The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options within a container's SecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to all containers. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in SecurityContext. If set in +/// both SecurityContext and PodSecurityContext, the value specified in SecurityContext +/// takes precedence for that container. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -1908,14 +2844,23 @@ pub struct AerospikeClusterPodSpecSecurityContextSeLinuxOptions { pub user: Option, } -/// The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by the containers in this pod. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } @@ -1929,19 +2874,30 @@ pub struct AerospikeClusterPodSpecSecurityContextSysctls { pub value: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options within a container's SecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } @@ -1949,75 +2905,166 @@ pub struct AerospikeClusterPodSpecSecurityContextWindowsOptions { /// A single application container that you want to run within a pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecars { - /// Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Arguments to the entrypoint. + /// The container image's CMD is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub args: Option>, - /// Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Entrypoint array. Not executed within a shell. + /// The container image's ENTRYPOINT is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, - /// List of environment variables to set in the container. Cannot be updated. + /// List of environment variables to set in the container. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub env: Option>, - /// List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. + /// List of sources to populate environment variables in the container. + /// The keys defined within a source must be a C_IDENTIFIER. All invalid keys + /// will be reported as an event when the container is starting. When a key exists in multiple + /// sources, the value associated with the last source will take precedence. + /// Values defined by an Env with a duplicate key will take precedence. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")] pub env_from: Option>, - /// Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets. + /// Container image name. + /// More info: https://kubernetes.io/docs/concepts/containers/images + /// This field is optional to allow higher level config management to default or override + /// container images in workload controllers like Deployments and StatefulSets. #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, - /// Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images + /// Image pull policy. + /// One of Always, Never, IfNotPresent. + /// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")] pub image_pull_policy: Option, - /// Actions that the management system should take in response to container lifecycle events. Cannot be updated. + /// Actions that the management system should take in response to container lifecycle events. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub lifecycle: Option, - /// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container liveness. + /// Container will be restarted if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "livenessProbe")] pub liveness_probe: Option, - /// Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated. + /// Name of the container specified as a DNS_LABEL. + /// Each container in a pod must have a unique name (DNS_LABEL). + /// Cannot be updated. pub name: String, - /// List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated. + /// List of ports to expose from the container. Not specifying a port here + /// DOES NOT prevent that port from being exposed. Any port which is + /// listening on the default "0.0.0.0" address inside a container will be + /// accessible from the network. + /// Modifying this array with strategic merge patch may corrupt the data. + /// For more information See https://github.com/kubernetes/kubernetes/issues/108255. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container service readiness. + /// Container will be removed from service endpoints if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, /// Resources resize policy for the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] pub resize_policy: Option>, - /// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Compute Resources required by this container. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, - /// RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is "Always". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as "Always" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy "Always" will be shut down. This lifecycle differs from normal init containers and is often referred to as a "sidecar" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed. + /// RestartPolicy defines the restart behavior of individual containers in a pod. + /// This field may only be set for init containers, and the only allowed value is "Always". + /// For non-init containers or when this field is not specified, + /// the restart behavior is defined by the Pod's restart policy and the container type. + /// Setting the RestartPolicy as "Always" for the init container will have the following effect: + /// this init container will be continually restarted on + /// exit until all regular containers have terminated. Once all regular + /// containers have completed, all init containers with restartPolicy "Always" + /// will be shut down. This lifecycle differs from normal init containers and + /// is often referred to as a "sidecar" container. Although this init + /// container still starts in the init container sequence, it does not wait + /// for the container to complete before proceeding to the next init + /// container. Instead, the next init container starts immediately after this + /// init container is started, or after any startupProbe has successfully + /// completed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, - /// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ + /// SecurityContext defines the security options the container should be run with. + /// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. + /// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, - /// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// StartupProbe indicates that the Pod has successfully initialized. + /// If specified, no other probes are executed until this completes successfully. + /// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. + /// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, + /// when it might take a long time to load data or warm a cache, than during steady-state operation. + /// This cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] pub startup_probe: Option, - /// Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. + /// Whether this container should allocate a buffer for stdin in the container runtime. If this + /// is not set, reads from stdin in the container will always result in EOF. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub stdin: Option, - /// Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false + /// Whether the container runtime should close the stdin channel after it has been opened by + /// a single attach. When stdin is true the stdin stream will remain open across multiple attach + /// sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the + /// first client attaches to stdin, and then remains open and accepts data until the client disconnects, + /// at which time stdin is closed and remains closed until the container is restarted. If this + /// flag is false, a container processes that reads from stdin will never receive an EOF. + /// Default is false #[serde(default, skip_serializing_if = "Option::is_none", rename = "stdinOnce")] pub stdin_once: Option, - /// Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. + /// Optional: Path at which the file to which the container's termination message + /// will be written is mounted into the container's filesystem. + /// Message written is intended to be brief final status, such as an assertion failure message. + /// Will be truncated by the node if greater than 4096 bytes. The total message length across + /// all containers will be limited to 12kb. + /// Defaults to /dev/termination-log. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePath")] pub termination_message_path: Option, - /// Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. + /// Indicate how the termination message should be populated. File will use the contents of + /// terminationMessagePath to populate the container status message on both success and failure. + /// FallbackToLogsOnError will use the last chunk of container log output if the termination + /// message file is empty and the container exited with an error. + /// The log output is limited to 2048 bytes or 80 lines, whichever is smaller. + /// Defaults to File. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePolicy")] pub termination_message_policy: Option, - /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. + /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub tty: Option, /// volumeDevices is the list of block devices to be used by the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeDevices")] pub volume_devices: Option>, - /// Pod volumes to mount into the container's filesystem. Cannot be updated. + /// Pod volumes to mount into the container's filesystem. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")] pub volume_mounts: Option>, - /// Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated. + /// Container's working directory. + /// If not specified, the container runtime's default will be used, which + /// might be configured in the container image. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "workingDir")] pub working_dir: Option, } @@ -2027,7 +3074,15 @@ pub struct AerospikeClusterPodSpecSidecars { pub struct AerospikeClusterPodSpecSidecarsEnv { /// Name of the environment variable. Must be a C_IDENTIFIER. pub name: String, - /// Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". + /// Variable references $(VAR_NAME) are expanded + /// using the previously defined environment variables in the container and + /// any service environment variables. If a variable cannot be resolved, + /// the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + /// "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + /// Escaped references will never be expanded, regardless of whether the variable + /// exists or not. + /// Defaults to "". #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, /// Source for the environment variable's value. Cannot be used if value is not empty. @@ -2041,10 +3096,12 @@ pub struct AerospikeClusterPodSpecSidecarsEnvValueFrom { /// Selects a key of a ConfigMap. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapKeyRef")] pub config_map_key_ref: Option, - /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + /// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")] pub field_ref: Option, - /// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + /// Selects a resource of the container: only resources limits and requests + /// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")] pub resource_field_ref: Option, /// Selects a key of a secret in the pod's namespace @@ -2057,7 +3114,9 @@ pub struct AerospikeClusterPodSpecSidecarsEnvValueFrom { pub struct AerospikeClusterPodSpecSidecarsEnvValueFromConfigMapKeyRef { /// The key to select. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -2065,7 +3124,8 @@ pub struct AerospikeClusterPodSpecSidecarsEnvValueFromConfigMapKeyRef { pub optional: Option, } -/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. +/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, +/// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsEnvValueFromFieldRef { /// Version of the schema the FieldPath is written in terms of, defaults to "v1". @@ -2076,7 +3136,8 @@ pub struct AerospikeClusterPodSpecSidecarsEnvValueFromFieldRef { pub field_path: String, } -/// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. +/// Selects a resource of the container: only resources limits and requests +/// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsEnvValueFromResourceFieldRef { /// Container name: required for volumes, optional for env vars @@ -2094,7 +3155,9 @@ pub struct AerospikeClusterPodSpecSidecarsEnvValueFromResourceFieldRef { pub struct AerospikeClusterPodSpecSidecarsEnvValueFromSecretKeyRef { /// The key of the secret to select from. Must be a valid secret key. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -2119,7 +3182,9 @@ pub struct AerospikeClusterPodSpecSidecarsEnvFrom { /// The ConfigMap to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsEnvFromConfigMapRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -2130,7 +3195,9 @@ pub struct AerospikeClusterPodSpecSidecarsEnvFromConfigMapRef { /// The Secret to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsEnvFromSecretRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -2138,18 +3205,33 @@ pub struct AerospikeClusterPodSpecSidecarsEnvFromSecretRef { pub optional: Option, } -/// Actions that the management system should take in response to container lifecycle events. Cannot be updated. +/// Actions that the management system should take in response to container lifecycle events. +/// Cannot be updated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecycle { - /// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PostStart is called immediately after a container is created. If the handler fails, + /// the container is terminated and restarted according to its restart policy. + /// Other management of the container blocks until the hook completes. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "postStart")] pub post_start: Option, - /// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PreStop is called immediately before a container is terminated due to an + /// API request or management event such as liveness/startup probe failure, + /// preemption, resource contention, etc. The handler is not called if the + /// container crashes or exits. The Pod's termination grace period countdown begins before the + /// PreStop hook is executed. Regardless of the outcome of the handler, the + /// container will eventually terminate within the Pod's termination grace + /// period (unless delayed by finalizers). Other management of the container blocks until the hook completes + /// or until the termination grace period is reached. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "preStop")] pub pre_stop: Option, } -/// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PostStart is called immediately after a container is created. If the handler fails, +/// the container is terminated and restarted according to its restart policy. +/// Other management of the container blocks until the hook completes. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStart { /// Exec specifies the action to take. @@ -2161,7 +3243,9 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStart { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -2169,7 +3253,11 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStart { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -2177,7 +3265,8 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -2186,9 +3275,12 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -2196,7 +3288,8 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -2209,17 +3302,29 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePostStartTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PreStop is called immediately before a container is terminated due to an +/// API request or management event such as liveness/startup probe failure, +/// preemption, resource contention, etc. The handler is not called if the +/// container crashes or exits. The Pod's termination grace period countdown begins before the +/// PreStop hook is executed. Regardless of the outcome of the handler, the +/// container will eventually terminate within the Pod's termination grace +/// period (unless delayed by finalizers). Other management of the container blocks until the hook completes +/// or until the termination grace period is reached. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStop { /// Exec specifies the action to take. @@ -2231,7 +3336,9 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStop { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -2239,7 +3346,11 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStop { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -2247,7 +3358,8 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -2256,9 +3368,12 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -2266,7 +3381,8 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -2279,23 +3395,31 @@ pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLifecyclePreStopTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container liveness. +/// Container will be restarted if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLivenessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -2304,22 +3428,36 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -2327,7 +3465,11 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLivenessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -2337,8 +3479,11 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbeExec { pub struct AerospikeClusterPodSpecSidecarsLivenessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -2346,7 +3491,8 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLivenessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -2355,9 +3501,12 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -2365,7 +3514,8 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsLivenessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -2377,37 +3527,50 @@ pub struct AerospikeClusterPodSpecSidecarsLivenessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerPort represents a network port in a single container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsPorts { - /// Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536. + /// Number of port to expose on the pod's IP address. + /// This must be a valid port number, 0 < x < 65536. #[serde(rename = "containerPort")] pub container_port: i32, /// What host IP to bind the external port to. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostIP")] pub host_ip: Option, - /// Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this. + /// Number of port to expose on the host. + /// If specified, this must be a valid port number, 0 < x < 65536. + /// If HostNetwork is specified, this must match ContainerPort. + /// Most containers do not need this. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPort")] pub host_port: Option, - /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. + /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each + /// named port in a pod must have a unique name. Name for the port that can be + /// referred to by services. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, - /// Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP". + /// Protocol for port. Must be UDP, TCP, or SCTP. + /// Defaults to "TCP". #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } -/// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container service readiness. +/// Container will be removed from service endpoints if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsReadinessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -2416,22 +3579,36 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -2439,7 +3616,11 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsReadinessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -2449,8 +3630,11 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbeExec { pub struct AerospikeClusterPodSpecSidecarsReadinessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -2458,7 +3642,8 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsReadinessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -2467,9 +3652,12 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -2477,7 +3665,8 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsReadinessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -2489,33 +3678,49 @@ pub struct AerospikeClusterPodSpecSidecarsReadinessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerResizePolicy represents resource resize policy for the container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsResizePolicy { - /// Name of the resource to which this resource resize policy applies. Supported values: cpu, memory. + /// Name of the resource to which this resource resize policy applies. + /// Supported values: cpu, memory. #[serde(rename = "resourceName")] pub resource_name: String, - /// Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired. + /// Restart policy to apply when specified resource is resized. + /// If not specified, it defaults to NotRequired. #[serde(rename = "restartPolicy")] pub restart_policy: String, } -/// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ +/// Compute Resources required by this container. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -2523,49 +3728,95 @@ pub struct AerospikeClusterPodSpecSidecarsResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } -/// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ +/// SecurityContext defines the security options the container should be run with. +/// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. +/// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsSecurityContextCapabilities { /// Added capabilities @@ -2576,7 +3827,11 @@ pub struct AerospikeClusterPodSpecSidecarsSecurityContextCapabilities { pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -2593,42 +3848,71 @@ pub struct AerospikeClusterPodSpecSidecarsSecurityContextSeLinuxOptions { pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// StartupProbe indicates that the Pod has successfully initialized. +/// If specified, no other probes are executed until this completes successfully. +/// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. +/// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, +/// when it might take a long time to load data or warm a cache, than during steady-state operation. +/// This cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsStartupProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -2637,22 +3921,36 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -2660,7 +3958,11 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsStartupProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -2670,8 +3972,11 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbeExec { pub struct AerospikeClusterPodSpecSidecarsStartupProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -2679,7 +3984,8 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsStartupProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -2688,9 +3994,12 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -2698,7 +4007,8 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsStartupProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -2710,7 +4020,9 @@ pub struct AerospikeClusterPodSpecSidecarsStartupProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } @@ -2727,46 +4039,66 @@ pub struct AerospikeClusterPodSpecSidecarsVolumeDevices { /// VolumeMount describes a mounting of a Volume within a container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecSidecarsVolumeMounts { - /// Path within the container at which the volume should be mounted. Must not contain ':'. + /// Path within the container at which the volume should be mounted. Must + /// not contain ':'. #[serde(rename = "mountPath")] pub mount_path: String, - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, /// This must match the Name of a Volume. pub name: String, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterPodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration +/// RackConfig Configures the operator to deploy rack aware Aerospike cluster. +/// Pods will be deployed in given racks based on given configuration #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfig { /// List of Aerospike namespaces for which rack feature will be enabled @@ -2786,7 +4118,8 @@ pub struct AerospikeClusterRackConfigRacks { /// AerospikeConfig overrides the common AerospikeConfig for this Rack. This is merged with global Aerospike config. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeConfig")] pub aerospike_config: Option>, - /// Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global Aerospike config + /// Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global + /// Aerospike config #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveAerospikeConfig")] pub effective_aerospike_config: Option>, /// Effective/operative PodSpec. The resultant is user input if specified else global PodSpec @@ -2803,7 +4136,8 @@ pub struct AerospikeClusterRackConfigRacks { /// PodSpec to use for the pods in this rack. This value overwrites the global storage config #[serde(default, skip_serializing_if = "Option::is_none", rename = "podSpec")] pub pod_spec: Option, - /// RackLabel for setting rack affinity. Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: } + /// RackLabel for setting rack affinity. + /// Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: } #[serde(default, skip_serializing_if = "Option::is_none", rename = "rackLabel")] pub rack_label: Option, /// Region name for setting rack affinity. Rack pods will be deployed to given Region @@ -2848,15 +4182,28 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -2876,31 +4223,47 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityPr pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -2908,7 +4271,9 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRe pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -2919,26 +4284,38 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRe pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -2946,10 +4323,24 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityNodeAffinityRe /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -2960,144 +4351,244 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPre /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -3105,10 +4596,24 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAffinityReq /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -3119,164 +4624,274 @@ pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinit /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectivePodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } @@ -3301,7 +4916,8 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -3313,10 +4929,12 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageBlockVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -3376,7 +4994,8 @@ pub enum AerospikeClusterRackConfigRacksEffectiveStorageBlockVolumePolicyWipeMet /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -3388,10 +5007,12 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageFilesystemVolumePolicy /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -3453,7 +5074,8 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -3468,7 +5090,8 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -3479,7 +5102,8 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -3495,16 +5119,25 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesAerospike { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -3547,16 +5180,25 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesInitContainers #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -3587,16 +5229,25 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSidecars { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -3607,14 +5258,19 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -3622,13 +5278,27 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -3641,20 +5311,37 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceConfigMap pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -3662,7 +5349,8 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceEmptyDir /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -3696,37 +5384,61 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourcePersisten /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -3736,10 +5448,18 @@ pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceSecret { pub struct AerospikeClusterRackConfigRacksEffectiveStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -3786,15 +5506,28 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -3814,31 +5547,47 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityPreferredDu pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -3846,7 +5595,9 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDur pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -3857,26 +5608,38 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDur pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -3884,10 +5647,24 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityNodeAffinityRequiredDur /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -3898,144 +5675,244 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDur /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -4043,10 +5920,24 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAffinityRequiredDuri /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -4057,164 +5948,274 @@ pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferre /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksPodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } @@ -4239,7 +6240,8 @@ pub struct AerospikeClusterRackConfigRacksStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4251,10 +6253,12 @@ pub struct AerospikeClusterRackConfigRacksStorageBlockVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4314,7 +6318,8 @@ pub enum AerospikeClusterRackConfigRacksStorageBlockVolumePolicyWipeMethod { /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4326,10 +6331,12 @@ pub struct AerospikeClusterRackConfigRacksStorageFilesystemVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4391,7 +6398,8 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4406,7 +6414,8 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -4417,7 +6426,8 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4433,16 +6443,25 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesAerospike { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -4485,16 +6504,25 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesInitContainers { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -4525,16 +6553,25 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSidecars { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -4545,14 +6582,19 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -4560,13 +6602,27 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -4579,20 +6635,37 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceConfigMap { pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -4600,7 +6673,8 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceEmptyDir { /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -4634,37 +6708,61 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSourcePersistentVolumeSe /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -4674,10 +6772,18 @@ pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceSecret { pub struct AerospikeClusterRackConfigRacksStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -4693,20 +6799,25 @@ pub enum AerospikeClusterRackConfigRacksStorageVolumesWipeMethod { DeleteFiles, } -/// SeedsFinderServices creates additional Kubernetes service that allow clients to discover Aerospike cluster nodes. +/// SeedsFinderServices creates additional Kubernetes service that allow +/// clients to discover Aerospike cluster nodes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterSeedsFinderServices { - /// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. + /// LoadBalancer created to discover Aerospike Cluster nodes from outside of + /// Kubernetes cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancer")] pub load_balancer: Option, } -/// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. +/// LoadBalancer created to discover Aerospike Cluster nodes from outside of +/// Kubernetes cluster. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterSeedsFinderServicesLoadBalancer { #[serde(default, skip_serializing_if = "Option::is_none")] pub annotations: Option>, - /// ServiceExternalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's "externally-facing" addresses (NodePorts, ExternalIPs, and LoadBalancer IPs. + /// ServiceExternalTrafficPolicy describes how nodes distribute service traffic they + /// receive on one of the Service's "externally-facing" addresses (NodePorts, ExternalIPs, + /// and LoadBalancer IPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "externalTrafficPolicy")] pub external_traffic_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancerSourceRanges")] @@ -4714,12 +6825,14 @@ pub struct AerospikeClusterSeedsFinderServicesLoadBalancer { /// Port Exposed port on load balancer. If not specified TargetPort is used. #[serde(default, skip_serializing_if = "Option::is_none")] pub port: Option, - /// TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. If there is no tls port configured then regular port from network.service is used. + /// TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. + /// If there is no tls port configured then regular port from network.service is used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetPort")] pub target_port: Option, } -/// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. +/// LoadBalancer created to discover Aerospike Cluster nodes from outside of +/// Kubernetes cluster. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum AerospikeClusterSeedsFinderServicesLoadBalancerExternalTrafficPolicy { Local, @@ -4746,7 +6859,8 @@ pub struct AerospikeClusterStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4758,10 +6872,12 @@ pub struct AerospikeClusterStorageBlockVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4821,7 +6937,8 @@ pub enum AerospikeClusterStorageBlockVolumePolicyWipeMethod { /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4833,10 +6950,12 @@ pub struct AerospikeClusterStorageFilesystemVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4898,7 +7017,8 @@ pub struct AerospikeClusterStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -4913,7 +7033,8 @@ pub struct AerospikeClusterStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -4924,7 +7045,8 @@ pub struct AerospikeClusterStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -4940,16 +7062,25 @@ pub struct AerospikeClusterStorageVolumesAerospike { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -4992,16 +7123,25 @@ pub struct AerospikeClusterStorageVolumesInitContainers { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -5032,16 +7172,25 @@ pub struct AerospikeClusterStorageVolumesSidecars { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -5052,14 +7201,19 @@ pub struct AerospikeClusterStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -5067,13 +7221,27 @@ pub struct AerospikeClusterStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -5086,20 +7254,37 @@ pub struct AerospikeClusterStorageVolumesSourceConfigMap { pub struct AerospikeClusterStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -5107,7 +7292,8 @@ pub struct AerospikeClusterStorageVolumesSourceEmptyDir { /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -5141,37 +7327,61 @@ pub struct AerospikeClusterStorageVolumesSourcePersistentVolumeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -5181,10 +7391,18 @@ pub struct AerospikeClusterStorageVolumesSourceSecret { pub struct AerospikeClusterStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -5203,10 +7421,12 @@ pub enum AerospikeClusterStorageVolumesWipeMethod { /// ValidationPolicy controls validation of the Aerospike cluster resource. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterValidationPolicy { - /// skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. Defaults to false. + /// skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. + /// Defaults to false. #[serde(rename = "skipWorkDirValidate")] pub skip_work_dir_validate: bool, - /// ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. Defaults to false. + /// ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. + /// Defaults to false. #[serde(rename = "skipXdrDlogFileValidate")] pub skip_xdr_dlog_file_validate: bool, } @@ -5214,7 +7434,8 @@ pub struct AerospikeClusterValidationPolicy { /// AerospikeClusterStatus defines the observed state of AerospikeCluster #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatus { - /// AerospikeAccessControl has the Aerospike roles and users definitions. Required if aerospike cluster security is enabled. + /// AerospikeAccessControl has the Aerospike roles and users definitions. + /// Required if aerospike cluster security is enabled. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeAccessControl")] pub aerospike_access_control: Option, /// AerospikeConfig sets config in aerospike.conf file. Other configs are taken as default @@ -5226,8 +7447,19 @@ pub struct AerospikeClusterStatus { /// Aerospike server image #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, - /// If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod. NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. - /// If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user. Deprecated: MultiPodPerHost is now part of podSpec + /// If set true then multiple pods can be created per Kubernetes Node. + /// This will create a NodePort service for each Pod. + /// NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , + /// and any traffic that is sent to this port is forwarded to the service. + /// Here service picks a random port in range (30000-32767), so these port should be open. + /// + /// + /// If set false then only single pod can be created per Kubernetes Node. + /// This will create Pods using hostPort setting. + /// The container port will be exposed to the external network at :, + /// where the hostIP is the IP address of the Kubernetes Node where the container is running and + /// the hostPort is the port requested by the user. + /// Deprecated: MultiPodPerHost is now part of podSpec #[serde(default, skip_serializing_if = "Option::is_none", rename = "multiPodPerHost")] pub multi_pod_per_host: Option, /// Certificates to connect to Aerospike. If omitted then certs are taken from the secret 'aerospike-secret'. @@ -5236,12 +7468,18 @@ pub struct AerospikeClusterStatus { /// Additional configuration for create Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "podSpec")] pub pod_spec: Option, - /// Pods has Aerospike specific status of the pods. This is map instead of the conventional map as list convention to allow each pod to patch update its own status. The map key is the name of the pod. + /// Pods has Aerospike specific status of the pods. + /// This is map instead of the conventional map as list convention to allow each pod to patch update its own + /// status. The map key is the name of the pod. pub pods: BTreeMap, - /// RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration + /// RackConfig Configures the operator to deploy rack aware Aerospike cluster. + /// Pods will be deployed in given racks based on given configuration #[serde(default, skip_serializing_if = "Option::is_none", rename = "rackConfig")] pub rack_config: Option, - /// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Deprecated: Resources field is now part of containerSpec + /// Define resources requests and limits for Aerospike Server Container. + /// Please contact aerospike for proper sizing exercise + /// Only Memory and Cpu resources can be given + /// Deprecated: Resources field is now part of containerSpec #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, /// RosterNodeBlockList is a list of blocked nodeIDs from roster in a strong-consistency setup @@ -5261,7 +7499,8 @@ pub struct AerospikeClusterStatus { pub validation_policy: Option, } -/// AerospikeAccessControl has the Aerospike roles and users definitions. Required if aerospike cluster security is enabled. +/// AerospikeAccessControl has the Aerospike roles and users definitions. +/// Required if aerospike cluster security is enabled. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusAerospikeAccessControl { /// AerospikeClientAdminPolicy specify the aerospike client admin policy for access control operations. @@ -5306,7 +7545,8 @@ pub struct AerospikeClusterStatusAerospikeAccessControlUsers { pub name: String, /// Roles is the list of roles granted to the user. pub roles: Vec, - /// SecretName has secret info created by user. User needs to create this secret from password literal. eg: kubectl create secret generic dev-db-secret --from-literal=password='password' + /// SecretName has secret info created by user. User needs to create this secret from password literal. + /// eg: kubectl create secret generic dev-db-secret --from-literal=password='password' #[serde(rename = "secretName")] pub secret_name: String, } @@ -5314,40 +7554,78 @@ pub struct AerospikeClusterStatusAerospikeAccessControlUsers { /// AerospikeNetworkPolicy specifies how clients and tools access the Aerospike cluster. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusAerospikeNetworkPolicy { - /// AccessType is the type of network address to use for Aerospike access address. Defaults to hostInternal. + /// AccessType is the type of network address to use for Aerospike access address. + /// Defaults to hostInternal. #[serde(default, skip_serializing_if = "Option::is_none")] pub access: Option, - /// AlternateAccessType is the type of network address to use for Aerospike alternate access address. Defaults to hostExternal. + /// AlternateAccessType is the type of network address to use for Aerospike alternate access address. + /// Defaults to hostExternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "alternateAccess")] pub alternate_access: Option, - /// CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' access type. + /// CustomAccessNetworkNames is the list of the pod's network interfaces used for Aerospike access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' access type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "customAccessNetworkNames")] pub custom_access_network_names: Option>, - /// CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' alternateAccess type + /// CustomAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike + /// alternate access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' alternateAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customAlternateAccessNetworkNames")] pub custom_alternate_access_network_names: Option>, - /// CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' fabric type + /// CustomFabricNetworkNames is the list of the pod's network interfaces used for Aerospike fabric address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' fabric type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customFabricNetworkNames")] pub custom_fabric_network_names: Option>, - /// CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAccess type + /// CustomTLSAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' tlsAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSAccessNetworkNames")] pub custom_tls_access_network_names: Option>, - /// CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS alternate access address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsAlternateAccess type + /// CustomTLSAlternateAccessNetworkNames is the list of the pod's network interfaces used for Aerospike TLS + /// alternate access address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign + /// network interfaces to the pod. + /// Required with 'customInterface' tlsAlternateAccess type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSAlternateAccessNetworkNames")] pub custom_tls_alternate_access_network_names: Option>, - /// CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, separated by a forward slash (/). These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network interfaces to the pod. Required with 'customInterface' tlsFabric type + /// CustomTLSFabricNetworkNames is the list of the pod's network interfaces used for Aerospike TLS fabric address. + /// Each element in the list is specified with a namespace and the name of a NetworkAttachmentDefinition, + /// separated by a forward slash (/). + /// These elements must be defined in the pod annotation k8s.v1.cni.cncf.io/networks in order to assign network + /// interfaces to the pod. + /// Required with 'customInterface' tlsFabric type #[serde(default, skip_serializing_if = "Option::is_none", rename = "customTLSFabricNetworkNames")] pub custom_tls_fabric_network_names: Option>, - /// FabricType is the type of network address to use for Aerospike fabric address. Defaults is empty meaning all interfaces 'any'. + /// FabricType is the type of network address to use for Aerospike fabric address. + /// Defaults is empty meaning all interfaces 'any'. #[serde(default, skip_serializing_if = "Option::is_none")] pub fabric: Option, - /// TLSAccessType is the type of network address to use for Aerospike TLS access address. Defaults to hostInternal. + /// TLSAccessType is the type of network address to use for Aerospike TLS access address. + /// Defaults to hostInternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsAccess")] pub tls_access: Option, - /// TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. Defaults to hostExternal. + /// TLSAlternateAccessType is the type of network address to use for Aerospike TLS alternate access address. + /// Defaults to hostExternal. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsAlternateAccess")] pub tls_alternate_access: Option, - /// TLSFabricType is the type of network address to use for Aerospike TLS fabric address. Defaults is empty meaning all interfaces 'any'. + /// TLSFabricType is the type of network address to use for Aerospike TLS fabric address. + /// Defaults is empty meaning all interfaces 'any'. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsFabric")] pub tls_fabric: Option, } @@ -5429,7 +7707,9 @@ pub enum AerospikeClusterStatusAerospikeNetworkPolicyTlsFabric { /// Certificates to connect to Aerospike. If omitted then certs are taken from the secret 'aerospike-secret'. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusOperatorClientCertSpec { - /// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem. + /// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike + /// cluster. + /// All paths are on operator's filesystem. #[serde(default, skip_serializing_if = "Option::is_none", rename = "certPathInOperator")] pub cert_path_in_operator: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretCertSource")] @@ -5439,7 +7719,9 @@ pub struct AerospikeClusterStatusOperatorClientCertSpec { pub tls_client_name: Option, } -/// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike cluster. All paths are on operator's filesystem. +/// AerospikeCertPathInOperatorSource contain configuration for certificates used by operator to connect to aerospike +/// cluster. +/// All paths are on operator's filesystem. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusOperatorClientCertSpecCertPathInOperator { #[serde(default, skip_serializing_if = "Option::is_none", rename = "caCertsPath")] @@ -5477,28 +7759,35 @@ pub struct AerospikeClusterStatusOperatorClientCertSpecSecretCertSourceCaCertsSo /// Additional configuration for create Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpec { - /// AerospikeContainerSpec configures the aerospike-server container created by the operator. + /// AerospikeContainerSpec configures the aerospike-server container + /// created by the operator. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeContainer")] pub aerospike_container: Option, - /// AerospikeInitContainerSpec configures the aerospike-init container created by the operator. + /// AerospikeInitContainerSpec configures the aerospike-init container + /// created by the operator. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeInitContainer")] pub aerospike_init_container: Option, /// Affinity rules for pod placement. #[serde(default, skip_serializing_if = "Option::is_none")] pub affinity: Option, - /// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None` + /// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. + /// This is required field when dnsPolicy is set to `None` #[serde(default, skip_serializing_if = "Option::is_none", rename = "dnsConfig")] pub dns_config: Option, - /// DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet + /// DnsPolicy same as https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy. + /// If hostNetwork is true and policy is not specified, it defaults to ClusterFirstWithHostNet #[serde(default, skip_serializing_if = "Option::is_none", rename = "dnsPolicy")] pub dns_policy: Option, /// Effective value of the DNSPolicy #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveDNSPolicy")] pub effective_dns_policy: Option, - /// HostNetwork enables host networking for the pod. To enable hostNetwork multiPodPerHost must be false. + /// HostNetwork enables host networking for the pod. + /// To enable hostNetwork multiPodPerHost must be false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostNetwork")] pub host_network: Option, - /// ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod + /// ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of + /// the images used by this PodSpec. + /// More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullSecrets")] pub image_pull_secrets: Option>, /// InitContainers to add to the pods. @@ -5507,14 +7796,25 @@ pub struct AerospikeClusterStatusPodSpec { /// MetaData to add to the pod. #[serde(default, skip_serializing_if = "Option::is_none")] pub metadata: Option, - /// If set true then multiple pods can be created per Kubernetes Node. This will create a NodePort service for each Pod. NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , and any traffic that is sent to this port is forwarded to the service. Here service picks a random port in range (30000-32767), so these port should be open. - /// If set false then only single pod can be created per Kubernetes Node. This will create Pods using hostPort setting. The container port will be exposed to the external network at :, where the hostIP is the IP address of the Kubernetes Node where the container is running and the hostPort is the port requested by the user. + /// If set true then multiple pods can be created per Kubernetes Node. + /// This will create a NodePort service for each Pod. + /// NodePort, as the name implies, opens a specific port on all the Kubernetes Nodes , + /// and any traffic that is sent to this port is forwarded to the service. + /// Here service picks a random port in range (30000-32767), so these port should be open. + /// + /// + /// If set false then only single pod can be created per Kubernetes Node. + /// This will create Pods using hostPort setting. + /// The container port will be exposed to the external network at :, + /// where the hostIP is the IP address of the Kubernetes Node where the container is running and + /// the hostPort is the port requested by the user. #[serde(default, skip_serializing_if = "Option::is_none", rename = "multiPodPerHost")] pub multi_pod_per_host: Option, /// NodeSelector constraints for this pod. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeSelector")] pub node_selector: Option>, - /// SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field. + /// SecurityContext holds pod-level security attributes and common container settings. + /// Optional: Defaults to empty. See type description for default values of each field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, /// Sidecars to add to the pod. @@ -5525,10 +7825,14 @@ pub struct AerospikeClusterStatusPodSpec { pub tolerations: Option>, } -/// AerospikeContainerSpec configures the aerospike-server container created by the operator. +/// AerospikeContainerSpec configures the aerospike-server container +/// created by the operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainer { - /// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. + /// Define resources requests and limits for Aerospike Server Container. + /// Please contact aerospike for proper sizing exercise + /// Only Memory and Cpu resources can be given + /// Resources.Limits should be more than Resources.Requests. #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, /// SecurityContext that will be added to aerospike-server container created by operator. @@ -5536,18 +7840,31 @@ pub struct AerospikeClusterStatusPodSpecAerospikeContainer { pub security_context: Option, } -/// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. +/// Define resources requests and limits for Aerospike Server Container. +/// Please contact aerospike for proper sizing exercise +/// Only Memory and Cpu resources can be given +/// Resources.Limits should be more than Resources.Requests. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -5555,49 +7872,93 @@ pub struct AerospikeClusterStatusPodSpecAerospikeContainerResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } /// SecurityContext that will be added to aerospike-server container created by operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextCapabilities { /// Added capabilities @@ -5608,7 +7969,11 @@ pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextCapabil pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -5625,42 +7990,68 @@ pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextSeLinux pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeContainerSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// AerospikeInitContainerSpec configures the aerospike-init container created by the operator. +/// AerospikeInitContainerSpec configures the aerospike-init container +/// created by the operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainer { - /// ImageRegistry is the name of image registry for aerospike-init container image ImageRegistry, e.g. docker.io, redhat.access.com + /// ImageRegistry is the name of image registry for aerospike-init container image + /// ImageRegistry, e.g. docker.io, redhat.access.com #[serde(default, skip_serializing_if = "Option::is_none", rename = "imageRegistry")] pub image_registry: Option, - /// Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. + /// Define resources requests and limits for Aerospike init Container. + /// Only Memory and Cpu resources can be given + /// Resources.Limits should be more than Resources.Requests. #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, /// SecurityContext that will be added to aerospike-init container created by operator. @@ -5668,18 +8059,30 @@ pub struct AerospikeClusterStatusPodSpecAerospikeInitContainer { pub security_context: Option, } -/// Define resources requests and limits for Aerospike init Container. Only Memory and Cpu resources can be given Resources.Limits should be more than Resources.Requests. +/// Define resources requests and limits for Aerospike init Container. +/// Only Memory and Cpu resources can be given +/// Resources.Limits should be more than Resources.Requests. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -5687,49 +8090,93 @@ pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } /// SecurityContext that will be added to aerospike-init container created by operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextCapabilities { /// Added capabilities @@ -5740,7 +8187,11 @@ pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextCap pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -5757,31 +8208,53 @@ pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextSeL pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAerospikeInitContainerSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } @@ -5803,15 +8276,28 @@ pub struct AerospikeClusterStatusPodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -5831,31 +8317,47 @@ pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityPreferredDuringSched pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -5863,7 +8365,9 @@ pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedu pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -5874,26 +8378,38 @@ pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedu pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -5901,10 +8417,24 @@ pub struct AerospikeClusterStatusPodSpecAffinityNodeAffinityRequiredDuringSchedu /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -5915,144 +8445,244 @@ pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedu /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -6060,10 +8690,24 @@ pub struct AerospikeClusterStatusPodSpecAffinityPodAffinityRequiredDuringSchedul /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -6074,158 +8718,266 @@ pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSc /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. This is required field when dnsPolicy is set to `None` +/// DNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. +/// This is required field when dnsPolicy is set to `None` #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecDnsConfig { - /// A list of DNS name server IP addresses. This will be appended to the base nameservers generated from DNSPolicy. Duplicated nameservers will be removed. + /// A list of DNS name server IP addresses. + /// This will be appended to the base nameservers generated from DNSPolicy. + /// Duplicated nameservers will be removed. #[serde(default, skip_serializing_if = "Option::is_none")] pub nameservers: Option>, - /// A list of DNS resolver options. This will be merged with the base options generated from DNSPolicy. Duplicated entries will be removed. Resolution options given in Options will override those that appear in the base DNSPolicy. + /// A list of DNS resolver options. + /// This will be merged with the base options generated from DNSPolicy. + /// Duplicated entries will be removed. Resolution options given in Options + /// will override those that appear in the base DNSPolicy. #[serde(default, skip_serializing_if = "Option::is_none")] pub options: Option>, - /// A list of DNS search domains for host-name lookup. This will be appended to the base search paths generated from DNSPolicy. Duplicated search paths will be removed. + /// A list of DNS search domains for host-name lookup. + /// This will be appended to the base search paths generated from DNSPolicy. + /// Duplicated search paths will be removed. #[serde(default, skip_serializing_if = "Option::is_none")] pub searches: Option>, } @@ -6240,10 +8992,13 @@ pub struct AerospikeClusterStatusPodSpecDnsConfigOptions { pub value: Option, } -/// LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. +/// LocalObjectReference contains enough information to let you locate the +/// referenced object inside the same namespace. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecImagePullSecrets { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -6251,75 +9006,166 @@ pub struct AerospikeClusterStatusPodSpecImagePullSecrets { /// A single application container that you want to run within a pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainers { - /// Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Arguments to the entrypoint. + /// The container image's CMD is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub args: Option>, - /// Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Entrypoint array. Not executed within a shell. + /// The container image's ENTRYPOINT is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, - /// List of environment variables to set in the container. Cannot be updated. + /// List of environment variables to set in the container. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub env: Option>, - /// List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. + /// List of sources to populate environment variables in the container. + /// The keys defined within a source must be a C_IDENTIFIER. All invalid keys + /// will be reported as an event when the container is starting. When a key exists in multiple + /// sources, the value associated with the last source will take precedence. + /// Values defined by an Env with a duplicate key will take precedence. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")] pub env_from: Option>, - /// Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets. + /// Container image name. + /// More info: https://kubernetes.io/docs/concepts/containers/images + /// This field is optional to allow higher level config management to default or override + /// container images in workload controllers like Deployments and StatefulSets. #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, - /// Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images + /// Image pull policy. + /// One of Always, Never, IfNotPresent. + /// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")] pub image_pull_policy: Option, - /// Actions that the management system should take in response to container lifecycle events. Cannot be updated. + /// Actions that the management system should take in response to container lifecycle events. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub lifecycle: Option, - /// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container liveness. + /// Container will be restarted if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "livenessProbe")] pub liveness_probe: Option, - /// Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated. + /// Name of the container specified as a DNS_LABEL. + /// Each container in a pod must have a unique name (DNS_LABEL). + /// Cannot be updated. pub name: String, - /// List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated. + /// List of ports to expose from the container. Not specifying a port here + /// DOES NOT prevent that port from being exposed. Any port which is + /// listening on the default "0.0.0.0" address inside a container will be + /// accessible from the network. + /// Modifying this array with strategic merge patch may corrupt the data. + /// For more information See https://github.com/kubernetes/kubernetes/issues/108255. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container service readiness. + /// Container will be removed from service endpoints if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, /// Resources resize policy for the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] pub resize_policy: Option>, - /// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Compute Resources required by this container. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, - /// RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is "Always". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as "Always" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy "Always" will be shut down. This lifecycle differs from normal init containers and is often referred to as a "sidecar" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed. + /// RestartPolicy defines the restart behavior of individual containers in a pod. + /// This field may only be set for init containers, and the only allowed value is "Always". + /// For non-init containers or when this field is not specified, + /// the restart behavior is defined by the Pod's restart policy and the container type. + /// Setting the RestartPolicy as "Always" for the init container will have the following effect: + /// this init container will be continually restarted on + /// exit until all regular containers have terminated. Once all regular + /// containers have completed, all init containers with restartPolicy "Always" + /// will be shut down. This lifecycle differs from normal init containers and + /// is often referred to as a "sidecar" container. Although this init + /// container still starts in the init container sequence, it does not wait + /// for the container to complete before proceeding to the next init + /// container. Instead, the next init container starts immediately after this + /// init container is started, or after any startupProbe has successfully + /// completed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, - /// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ + /// SecurityContext defines the security options the container should be run with. + /// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. + /// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, - /// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// StartupProbe indicates that the Pod has successfully initialized. + /// If specified, no other probes are executed until this completes successfully. + /// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. + /// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, + /// when it might take a long time to load data or warm a cache, than during steady-state operation. + /// This cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] pub startup_probe: Option, - /// Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. + /// Whether this container should allocate a buffer for stdin in the container runtime. If this + /// is not set, reads from stdin in the container will always result in EOF. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub stdin: Option, - /// Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false + /// Whether the container runtime should close the stdin channel after it has been opened by + /// a single attach. When stdin is true the stdin stream will remain open across multiple attach + /// sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the + /// first client attaches to stdin, and then remains open and accepts data until the client disconnects, + /// at which time stdin is closed and remains closed until the container is restarted. If this + /// flag is false, a container processes that reads from stdin will never receive an EOF. + /// Default is false #[serde(default, skip_serializing_if = "Option::is_none", rename = "stdinOnce")] pub stdin_once: Option, - /// Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. + /// Optional: Path at which the file to which the container's termination message + /// will be written is mounted into the container's filesystem. + /// Message written is intended to be brief final status, such as an assertion failure message. + /// Will be truncated by the node if greater than 4096 bytes. The total message length across + /// all containers will be limited to 12kb. + /// Defaults to /dev/termination-log. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePath")] pub termination_message_path: Option, - /// Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. + /// Indicate how the termination message should be populated. File will use the contents of + /// terminationMessagePath to populate the container status message on both success and failure. + /// FallbackToLogsOnError will use the last chunk of container log output if the termination + /// message file is empty and the container exited with an error. + /// The log output is limited to 2048 bytes or 80 lines, whichever is smaller. + /// Defaults to File. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePolicy")] pub termination_message_policy: Option, - /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. + /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub tty: Option, /// volumeDevices is the list of block devices to be used by the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeDevices")] pub volume_devices: Option>, - /// Pod volumes to mount into the container's filesystem. Cannot be updated. + /// Pod volumes to mount into the container's filesystem. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")] pub volume_mounts: Option>, - /// Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated. + /// Container's working directory. + /// If not specified, the container runtime's default will be used, which + /// might be configured in the container image. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "workingDir")] pub working_dir: Option, } @@ -6329,7 +9175,15 @@ pub struct AerospikeClusterStatusPodSpecInitContainers { pub struct AerospikeClusterStatusPodSpecInitContainersEnv { /// Name of the environment variable. Must be a C_IDENTIFIER. pub name: String, - /// Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". + /// Variable references $(VAR_NAME) are expanded + /// using the previously defined environment variables in the container and + /// any service environment variables. If a variable cannot be resolved, + /// the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + /// "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + /// Escaped references will never be expanded, regardless of whether the variable + /// exists or not. + /// Defaults to "". #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, /// Source for the environment variable's value. Cannot be used if value is not empty. @@ -6343,10 +9197,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFrom { /// Selects a key of a ConfigMap. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapKeyRef")] pub config_map_key_ref: Option, - /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + /// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")] pub field_ref: Option, - /// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + /// Selects a resource of the container: only resources limits and requests + /// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")] pub resource_field_ref: Option, /// Selects a key of a secret in the pod's namespace @@ -6359,7 +9215,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFrom { pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromConfigMapKeyRef { /// The key to select. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -6367,7 +9225,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromConfigMapKeyRe pub optional: Option, } -/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. +/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, +/// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromFieldRef { /// Version of the schema the FieldPath is written in terms of, defaults to "v1". @@ -6378,7 +9237,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromFieldRef { pub field_path: String, } -/// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. +/// Selects a resource of the container: only resources limits and requests +/// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromResourceFieldRef { /// Container name: required for volumes, optional for env vars @@ -6396,7 +9256,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromResourceFieldR pub struct AerospikeClusterStatusPodSpecInitContainersEnvValueFromSecretKeyRef { /// The key of the secret to select from. Must be a valid secret key. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -6421,7 +9283,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvFrom { /// The ConfigMap to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersEnvFromConfigMapRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -6432,7 +9296,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvFromConfigMapRef { /// The Secret to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersEnvFromSecretRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -6440,18 +9306,33 @@ pub struct AerospikeClusterStatusPodSpecInitContainersEnvFromSecretRef { pub optional: Option, } -/// Actions that the management system should take in response to container lifecycle events. Cannot be updated. +/// Actions that the management system should take in response to container lifecycle events. +/// Cannot be updated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecycle { - /// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PostStart is called immediately after a container is created. If the handler fails, + /// the container is terminated and restarted according to its restart policy. + /// Other management of the container blocks until the hook completes. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "postStart")] pub post_start: Option, - /// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PreStop is called immediately before a container is terminated due to an + /// API request or management event such as liveness/startup probe failure, + /// preemption, resource contention, etc. The handler is not called if the + /// container crashes or exits. The Pod's termination grace period countdown begins before the + /// PreStop hook is executed. Regardless of the outcome of the handler, the + /// container will eventually terminate within the Pod's termination grace + /// period (unless delayed by finalizers). Other management of the container blocks until the hook completes + /// or until the termination grace period is reached. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "preStop")] pub pre_stop: Option, } -/// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PostStart is called immediately after a container is created. If the handler fails, +/// the container is terminated and restarted according to its restart policy. +/// Other management of the container blocks until the hook completes. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStart { /// Exec specifies the action to take. @@ -6463,7 +9344,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStart { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -6471,7 +9354,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStart { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -6479,7 +9366,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -6488,9 +9376,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartHttpGet /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -6498,7 +9389,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartHttpGet /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -6511,17 +9403,29 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePostStartTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PreStop is called immediately before a container is terminated due to an +/// API request or management event such as liveness/startup probe failure, +/// preemption, resource contention, etc. The handler is not called if the +/// container crashes or exits. The Pod's termination grace period countdown begins before the +/// PreStop hook is executed. Regardless of the outcome of the handler, the +/// container will eventually terminate within the Pod's termination grace +/// period (unless delayed by finalizers). Other management of the container blocks until the hook completes +/// or until the termination grace period is reached. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStop { /// Exec specifies the action to take. @@ -6533,7 +9437,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStop { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -6541,7 +9447,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStop { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -6549,7 +9459,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -6558,9 +9469,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -6568,7 +9482,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -6581,23 +9496,31 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLifecyclePreStopTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container liveness. +/// Container will be restarted if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -6606,22 +9529,36 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -6629,7 +9566,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -6639,8 +9580,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeExec { pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -6648,7 +9592,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -6657,9 +9602,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -6667,7 +9615,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -6679,37 +9628,50 @@ pub struct AerospikeClusterStatusPodSpecInitContainersLivenessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerPort represents a network port in a single container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersPorts { - /// Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536. + /// Number of port to expose on the pod's IP address. + /// This must be a valid port number, 0 < x < 65536. #[serde(rename = "containerPort")] pub container_port: i32, /// What host IP to bind the external port to. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostIP")] pub host_ip: Option, - /// Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this. + /// Number of port to expose on the host. + /// If specified, this must be a valid port number, 0 < x < 65536. + /// If HostNetwork is specified, this must match ContainerPort. + /// Most containers do not need this. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPort")] pub host_port: Option, - /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. + /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each + /// named port in a pod must have a unique name. Name for the port that can be + /// referred to by services. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, - /// Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP". + /// Protocol for port. Must be UDP, TCP, or SCTP. + /// Defaults to "TCP". #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } -/// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container service readiness. +/// Container will be removed from service endpoints if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -6718,22 +9680,36 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -6741,7 +9717,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -6751,8 +9731,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeExec { pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -6760,7 +9743,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -6769,9 +9753,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -6779,7 +9766,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -6791,33 +9779,49 @@ pub struct AerospikeClusterStatusPodSpecInitContainersReadinessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerResizePolicy represents resource resize policy for the container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersResizePolicy { - /// Name of the resource to which this resource resize policy applies. Supported values: cpu, memory. + /// Name of the resource to which this resource resize policy applies. + /// Supported values: cpu, memory. #[serde(rename = "resourceName")] pub resource_name: String, - /// Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired. + /// Restart policy to apply when specified resource is resized. + /// If not specified, it defaults to NotRequired. #[serde(rename = "restartPolicy")] pub restart_policy: String, } -/// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ +/// Compute Resources required by this container. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -6825,49 +9829,95 @@ pub struct AerospikeClusterStatusPodSpecInitContainersResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } -/// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ +/// SecurityContext defines the security options the container should be run with. +/// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. +/// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextCapabilities { /// Added capabilities @@ -6878,7 +9928,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextCapabilitie pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -6895,42 +9949,71 @@ pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextSeLinuxOpti pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// StartupProbe indicates that the Pod has successfully initialized. +/// If specified, no other probes are executed until this completes successfully. +/// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. +/// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, +/// when it might take a long time to load data or warm a cache, than during steady-state operation. +/// This cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -6939,22 +10022,36 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -6962,7 +10059,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -6972,8 +10073,11 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeExec { pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -6981,7 +10085,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -6990,9 +10095,12 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7000,7 +10108,8 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7012,7 +10121,9 @@ pub struct AerospikeClusterStatusPodSpecInitContainersStartupProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } @@ -7029,21 +10140,30 @@ pub struct AerospikeClusterStatusPodSpecInitContainersVolumeDevices { /// VolumeMount describes a mounting of a Volume within a container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecInitContainersVolumeMounts { - /// Path within the container at which the volume should be mounted. Must not contain ':'. + /// Path within the container at which the volume should be mounted. Must + /// not contain ':'. #[serde(rename = "mountPath")] pub mount_path: String, - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, /// This must match the Name of a Volume. pub name: String, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -7059,44 +10179,97 @@ pub struct AerospikeClusterStatusPodSpecMetadata { pub labels: Option>, } -/// SecurityContext holds pod-level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field. +/// SecurityContext holds pod-level security attributes and common container settings. +/// Optional: Defaults to empty. See type description for default values of each field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSecurityContext { - /// A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: - /// 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- - /// If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows. + /// A special supplemental group that applies to all containers in a pod. + /// Some volume types allow the Kubelet to change the ownership of that volume + /// to be owned by the pod: + /// + /// + /// 1. The owning GID will be the FSGroup + /// 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) + /// 3. The permission bits are OR'd with rw-rw---- + /// + /// + /// If unset, the Kubelet will not modify the ownership and permissions of any volume. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] pub fs_group: Option, - /// fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. Note that this field cannot be set when spec.os.name is windows. + /// fsGroupChangePolicy defines behavior of changing ownership and permission of the volume + /// before being exposed inside Pod. This field will only apply to + /// volume types which support fsGroup based ownership(and permissions). + /// It will have no effect on ephemeral volume types such as: secret, configmaps + /// and emptydir. + /// Valid values are "OnRootMismatch" and "Always". If not specified, "Always" is used. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupChangePolicy")] pub fs_group_change_policy: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence + /// for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in SecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence + /// for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to all containers. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in SecurityContext. If set in + /// both SecurityContext and PodSecurityContext, the value specified in SecurityContext + /// takes precedence for that container. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by the containers in this pod. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// A list of groups applied to the first process run in each container, in addition to the container's primary GID, the fsGroup (if specified), and group memberships defined in the container image for the uid of the container process. If unspecified, no additional groups are added to any container. Note that group memberships defined in the container image for the uid of the container process are still effective, even if they are not included in this list. Note that this field cannot be set when spec.os.name is windows. + /// A list of groups applied to the first process run in each container, in addition + /// to the container's primary GID, the fsGroup (if specified), and group memberships + /// defined in the container image for the uid of the container process. If unspecified, + /// no additional groups are added to any container. Note that group memberships + /// defined in the container image for the uid of the container process are still effective, + /// even if they are not included in this list. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")] pub supplemental_groups: Option>, - /// Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows. + /// Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported + /// sysctls (by the container runtime) might fail to launch. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub sysctls: Option>, - /// The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options within a container's SecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to all containers. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in SecurityContext. If set in +/// both SecurityContext and PodSecurityContext, the value specified in SecurityContext +/// takes precedence for that container. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -7113,14 +10286,23 @@ pub struct AerospikeClusterStatusPodSpecSecurityContextSeLinuxOptions { pub user: Option, } -/// The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by the containers in this pod. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } @@ -7134,19 +10316,30 @@ pub struct AerospikeClusterStatusPodSpecSecurityContextSysctls { pub value: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options within a container's SecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } @@ -7154,75 +10347,166 @@ pub struct AerospikeClusterStatusPodSpecSecurityContextWindowsOptions { /// A single application container that you want to run within a pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecars { - /// Arguments to the entrypoint. The container image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Arguments to the entrypoint. + /// The container image's CMD is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub args: Option>, - /// Entrypoint array. Not executed within a shell. The container image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell + /// Entrypoint array. Not executed within a shell. + /// The container image's ENTRYPOINT is used if this is not provided. + /// Variable references $(VAR_NAME) are expanded using the container's environment. If a variable + /// cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will + /// produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless + /// of whether the variable exists or not. Cannot be updated. + /// More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, - /// List of environment variables to set in the container. Cannot be updated. + /// List of environment variables to set in the container. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub env: Option>, - /// List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. + /// List of sources to populate environment variables in the container. + /// The keys defined within a source must be a C_IDENTIFIER. All invalid keys + /// will be reported as an event when the container is starting. When a key exists in multiple + /// sources, the value associated with the last source will take precedence. + /// Values defined by an Env with a duplicate key will take precedence. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")] pub env_from: Option>, - /// Container image name. More info: https://kubernetes.io/docs/concepts/containers/images This field is optional to allow higher level config management to default or override container images in workload controllers like Deployments and StatefulSets. + /// Container image name. + /// More info: https://kubernetes.io/docs/concepts/containers/images + /// This field is optional to allow higher level config management to default or override + /// container images in workload controllers like Deployments and StatefulSets. #[serde(default, skip_serializing_if = "Option::is_none")] pub image: Option, - /// Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images + /// Image pull policy. + /// One of Always, Never, IfNotPresent. + /// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/containers/images#updating-images #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")] pub image_pull_policy: Option, - /// Actions that the management system should take in response to container lifecycle events. Cannot be updated. + /// Actions that the management system should take in response to container lifecycle events. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub lifecycle: Option, - /// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container liveness. + /// Container will be restarted if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "livenessProbe")] pub liveness_probe: Option, - /// Name of the container specified as a DNS_LABEL. Each container in a pod must have a unique name (DNS_LABEL). Cannot be updated. + /// Name of the container specified as a DNS_LABEL. + /// Each container in a pod must have a unique name (DNS_LABEL). + /// Cannot be updated. pub name: String, - /// List of ports to expose from the container. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Modifying this array with strategic merge patch may corrupt the data. For more information See https://github.com/kubernetes/kubernetes/issues/108255. Cannot be updated. + /// List of ports to expose from the container. Not specifying a port here + /// DOES NOT prevent that port from being exposed. Any port which is + /// listening on the default "0.0.0.0" address inside a container will be + /// accessible from the network. + /// Modifying this array with strategic merge patch may corrupt the data. + /// For more information See https://github.com/kubernetes/kubernetes/issues/108255. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Periodic probe of container service readiness. + /// Container will be removed from service endpoints if the probe fails. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "readinessProbe")] pub readiness_probe: Option, /// Resources resize policy for the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resizePolicy")] pub resize_policy: Option>, - /// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Compute Resources required by this container. + /// Cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, - /// RestartPolicy defines the restart behavior of individual containers in a pod. This field may only be set for init containers, and the only allowed value is "Always". For non-init containers or when this field is not specified, the restart behavior is defined by the Pod's restart policy and the container type. Setting the RestartPolicy as "Always" for the init container will have the following effect: this init container will be continually restarted on exit until all regular containers have terminated. Once all regular containers have completed, all init containers with restartPolicy "Always" will be shut down. This lifecycle differs from normal init containers and is often referred to as a "sidecar" container. Although this init container still starts in the init container sequence, it does not wait for the container to complete before proceeding to the next init container. Instead, the next init container starts immediately after this init container is started, or after any startupProbe has successfully completed. + /// RestartPolicy defines the restart behavior of individual containers in a pod. + /// This field may only be set for init containers, and the only allowed value is "Always". + /// For non-init containers or when this field is not specified, + /// the restart behavior is defined by the Pod's restart policy and the container type. + /// Setting the RestartPolicy as "Always" for the init container will have the following effect: + /// this init container will be continually restarted on + /// exit until all regular containers have terminated. Once all regular + /// containers have completed, all init containers with restartPolicy "Always" + /// will be shut down. This lifecycle differs from normal init containers and + /// is often referred to as a "sidecar" container. Although this init + /// container still starts in the init container sequence, it does not wait + /// for the container to complete before proceeding to the next init + /// container. Instead, the next init container starts immediately after this + /// init container is started, or after any startupProbe has successfully + /// completed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartPolicy")] pub restart_policy: Option, - /// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ + /// SecurityContext defines the security options the container should be run with. + /// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. + /// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityContext")] pub security_context: Option, - /// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// StartupProbe indicates that the Pod has successfully initialized. + /// If specified, no other probes are executed until this completes successfully. + /// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. + /// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, + /// when it might take a long time to load data or warm a cache, than during steady-state operation. + /// This cannot be updated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "startupProbe")] pub startup_probe: Option, - /// Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. + /// Whether this container should allocate a buffer for stdin in the container runtime. If this + /// is not set, reads from stdin in the container will always result in EOF. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub stdin: Option, - /// Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false + /// Whether the container runtime should close the stdin channel after it has been opened by + /// a single attach. When stdin is true the stdin stream will remain open across multiple attach + /// sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the + /// first client attaches to stdin, and then remains open and accepts data until the client disconnects, + /// at which time stdin is closed and remains closed until the container is restarted. If this + /// flag is false, a container processes that reads from stdin will never receive an EOF. + /// Default is false #[serde(default, skip_serializing_if = "Option::is_none", rename = "stdinOnce")] pub stdin_once: Option, - /// Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. + /// Optional: Path at which the file to which the container's termination message + /// will be written is mounted into the container's filesystem. + /// Message written is intended to be brief final status, such as an assertion failure message. + /// Will be truncated by the node if greater than 4096 bytes. The total message length across + /// all containers will be limited to 12kb. + /// Defaults to /dev/termination-log. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePath")] pub termination_message_path: Option, - /// Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. + /// Indicate how the termination message should be populated. File will use the contents of + /// terminationMessagePath to populate the container status message on both success and failure. + /// FallbackToLogsOnError will use the last chunk of container log output if the termination + /// message file is empty and the container exited with an error. + /// The log output is limited to 2048 bytes or 80 lines, whichever is smaller. + /// Defaults to File. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationMessagePolicy")] pub termination_message_policy: Option, - /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. + /// Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. + /// Default is false. #[serde(default, skip_serializing_if = "Option::is_none")] pub tty: Option, /// volumeDevices is the list of block devices to be used by the container. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeDevices")] pub volume_devices: Option>, - /// Pod volumes to mount into the container's filesystem. Cannot be updated. + /// Pod volumes to mount into the container's filesystem. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")] pub volume_mounts: Option>, - /// Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated. + /// Container's working directory. + /// If not specified, the container runtime's default will be used, which + /// might be configured in the container image. + /// Cannot be updated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "workingDir")] pub working_dir: Option, } @@ -7232,7 +10516,15 @@ pub struct AerospikeClusterStatusPodSpecSidecars { pub struct AerospikeClusterStatusPodSpecSidecarsEnv { /// Name of the environment variable. Must be a C_IDENTIFIER. pub name: String, - /// Variable references $(VAR_NAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". + /// Variable references $(VAR_NAME) are expanded + /// using the previously defined environment variables in the container and + /// any service environment variables. If a variable cannot be resolved, + /// the reference in the input string will be unchanged. Double $$ are reduced + /// to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + /// "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + /// Escaped references will never be expanded, regardless of whether the variable + /// exists or not. + /// Defaults to "". #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, /// Source for the environment variable's value. Cannot be used if value is not empty. @@ -7246,10 +10538,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFrom { /// Selects a key of a ConfigMap. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapKeyRef")] pub config_map_key_ref: Option, - /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + /// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + /// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldRef")] pub field_ref: Option, - /// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + /// Selects a resource of the container: only resources limits and requests + /// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceFieldRef")] pub resource_field_ref: Option, /// Selects a key of a secret in the pod's namespace @@ -7262,7 +10556,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFrom { pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromConfigMapKeyRef { /// The key to select. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -7270,7 +10566,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromConfigMapKeyRef { pub optional: Option, } -/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. +/// Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, +/// spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromFieldRef { /// Version of the schema the FieldPath is written in terms of, defaults to "v1". @@ -7281,7 +10578,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromFieldRef { pub field_path: String, } -/// Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. +/// Selects a resource of the container: only resources limits and requests +/// (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromResourceFieldRef { /// Container name: required for volumes, optional for env vars @@ -7299,7 +10597,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromResourceFieldRef { pub struct AerospikeClusterStatusPodSpecSidecarsEnvValueFromSecretKeyRef { /// The key of the secret to select from. Must be a valid secret key. pub key: String, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -7324,7 +10624,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvFrom { /// The ConfigMap to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsEnvFromConfigMapRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -7335,7 +10637,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvFromConfigMapRef { /// The Secret to select from #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsEnvFromSecretRef { - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -7343,18 +10647,33 @@ pub struct AerospikeClusterStatusPodSpecSidecarsEnvFromSecretRef { pub optional: Option, } -/// Actions that the management system should take in response to container lifecycle events. Cannot be updated. +/// Actions that the management system should take in response to container lifecycle events. +/// Cannot be updated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecycle { - /// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PostStart is called immediately after a container is created. If the handler fails, + /// the container is terminated and restarted according to its restart policy. + /// Other management of the container blocks until the hook completes. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "postStart")] pub post_start: Option, - /// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks + /// PreStop is called immediately before a container is terminated due to an + /// API request or management event such as liveness/startup probe failure, + /// preemption, resource contention, etc. The handler is not called if the + /// container crashes or exits. The Pod's termination grace period countdown begins before the + /// PreStop hook is executed. Regardless of the outcome of the handler, the + /// container will eventually terminate within the Pod's termination grace + /// period (unless delayed by finalizers). Other management of the container blocks until the hook completes + /// or until the termination grace period is reached. + /// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[serde(default, skip_serializing_if = "Option::is_none", rename = "preStop")] pub pre_stop: Option, } -/// PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PostStart is called immediately after a container is created. If the handler fails, +/// the container is terminated and restarted according to its restart policy. +/// Other management of the container blocks until the hook completes. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStart { /// Exec specifies the action to take. @@ -7366,7 +10685,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStart { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -7374,7 +10695,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStart { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7382,7 +10707,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7391,9 +10717,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7401,7 +10730,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7414,17 +10744,29 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePostStartTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// PreStop is called immediately before a container is terminated due to an API request or management event such as liveness/startup probe failure, preemption, resource contention, etc. The handler is not called if the container crashes or exits. The Pod's termination grace period countdown begins before the PreStop hook is executed. Regardless of the outcome of the handler, the container will eventually terminate within the Pod's termination grace period (unless delayed by finalizers). Other management of the container blocks until the hook completes or until the termination grace period is reached. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +/// PreStop is called immediately before a container is terminated due to an +/// API request or management event such as liveness/startup probe failure, +/// preemption, resource contention, etc. The handler is not called if the +/// container crashes or exits. The Pod's termination grace period countdown begins before the +/// PreStop hook is executed. Regardless of the outcome of the handler, the +/// container will eventually terminate within the Pod's termination grace +/// period (unless delayed by finalizers). Other management of the container blocks until the hook completes +/// or until the termination grace period is reached. +/// More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStop { /// Exec specifies the action to take. @@ -7436,7 +10778,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStop { /// Sleep represents the duration that the container should sleep before being terminated. #[serde(default, skip_serializing_if = "Option::is_none")] pub sleep: Option, - /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. + /// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept + /// for the backward compatibility. There are no validation of this field and + /// lifecycle hooks will fail in runtime when tcp handler is specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, } @@ -7444,7 +10788,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStop { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7452,7 +10800,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopExec { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7461,9 +10810,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7471,7 +10823,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7484,23 +10837,31 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopSleep { pub seconds: i64, } -/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for the backward compatibility. There are no validation of this field and lifecycle hooks will fail in runtime when tcp handler is specified. +/// Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept +/// for the backward compatibility. There are no validation of this field and +/// lifecycle hooks will fail in runtime when tcp handler is specified. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLifecyclePreStopTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } -/// Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container liveness. +/// Container will be restarted if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -7509,22 +10870,36 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -7532,7 +10907,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7542,8 +10921,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeExec { pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -7551,7 +10933,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7560,9 +10943,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7570,7 +10956,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7582,37 +10969,50 @@ pub struct AerospikeClusterStatusPodSpecSidecarsLivenessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerPort represents a network port in a single container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsPorts { - /// Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536. + /// Number of port to expose on the pod's IP address. + /// This must be a valid port number, 0 < x < 65536. #[serde(rename = "containerPort")] pub container_port: i32, /// What host IP to bind the external port to. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostIP")] pub host_ip: Option, - /// Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this. + /// Number of port to expose on the host. + /// If specified, this must be a valid port number, 0 < x < 65536. + /// If HostNetwork is specified, this must match ContainerPort. + /// Most containers do not need this. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPort")] pub host_port: Option, - /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. + /// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each + /// named port in a pod must have a unique name. Name for the port that can be + /// referred to by services. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, - /// Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP". + /// Protocol for port. Must be UDP, TCP, or SCTP. + /// Defaults to "TCP". #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } -/// Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// Periodic probe of container service readiness. +/// Container will be removed from service endpoints if the probe fails. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -7621,22 +11021,36 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -7644,7 +11058,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7654,8 +11072,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeExec { pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -7663,7 +11084,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7672,9 +11094,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7682,7 +11107,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7694,33 +11120,49 @@ pub struct AerospikeClusterStatusPodSpecSidecarsReadinessProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } /// ContainerResizePolicy represents resource resize policy for the container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsResizePolicy { - /// Name of the resource to which this resource resize policy applies. Supported values: cpu, memory. + /// Name of the resource to which this resource resize policy applies. + /// Supported values: cpu, memory. #[serde(rename = "resourceName")] pub resource_name: String, - /// Restart policy to apply when specified resource is resized. If not specified, it defaults to NotRequired. + /// Restart policy to apply when specified resource is resized. + /// If not specified, it defaults to NotRequired. #[serde(rename = "restartPolicy")] pub restart_policy: String, } -/// Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ +/// Compute Resources required by this container. +/// Cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -7728,49 +11170,95 @@ pub struct AerospikeClusterStatusPodSpecSidecarsResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } -/// SecurityContext defines the security options the container should be run with. If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ +/// SecurityContext defines the security options the container should be run with. +/// If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. +/// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContext { - /// AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN Note that this field cannot be set when spec.os.name is windows. + /// AllowPrivilegeEscalation controls whether a process can gain more + /// privileges than its parent process. This bool directly controls if + /// the no_new_privs flag will be set on the container process. + /// AllowPrivilegeEscalation is true always when the container is: + /// 1) run as Privileged + /// 2) has CAP_SYS_ADMIN + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowPrivilegeEscalation")] pub allow_privilege_escalation: Option, - /// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. + /// The capabilities to add/drop when running containers. + /// Defaults to the default set of capabilities granted by the container runtime. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub capabilities: Option, - /// Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. Note that this field cannot be set when spec.os.name is windows. + /// Run container in privileged mode. + /// Processes in privileged containers are essentially equivalent to root on the host. + /// Defaults to false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, - /// procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled. Note that this field cannot be set when spec.os.name is windows. + /// procMount denotes the type of proc mount to use for the containers. + /// The default is DefaultProcMount which uses the container runtime defaults for + /// readonly paths and masked paths. + /// This requires the ProcMountType feature flag to be enabled. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "procMount")] pub proc_mount: Option, - /// Whether this container has a read-only root filesystem. Default is false. Note that this field cannot be set when spec.os.name is windows. + /// Whether this container has a read-only root filesystem. + /// Default is false. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnlyRootFilesystem")] pub read_only_root_filesystem: Option, - /// The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The GID to run the entrypoint of the container process. + /// Uses runtime default if unset. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")] pub run_as_group: Option, - /// Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Indicates that the container must run as a non-root user. + /// If true, the Kubelet will validate the image at runtime to ensure that it + /// does not run as UID 0 (root) and fail to start the container if it does. + /// If unset or false, no such validation will be performed. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")] pub run_as_non_root: Option, - /// The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The UID to run the entrypoint of the container process. + /// Defaults to user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")] pub run_as_user: Option, - /// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. + /// The SELinux context to be applied to the container. + /// If unspecified, the container runtime will allocate a random SELinux context for each + /// container. May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")] pub se_linux_options: Option, - /// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. + /// The seccomp options to use by this container. If seccomp options are + /// provided at both the pod & container level, the container options + /// override the pod options. + /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. + /// The Windows specific settings applied to all containers. + /// If unspecified, the options from the PodSecurityContext will be used. + /// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// Note that this field cannot be set when spec.os.name is linux. #[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")] pub windows_options: Option, } -/// The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. Note that this field cannot be set when spec.os.name is windows. +/// The capabilities to add/drop when running containers. +/// Defaults to the default set of capabilities granted by the container runtime. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextCapabilities { /// Added capabilities @@ -7781,7 +11269,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextCapabilities { pub drop: Option>, } -/// The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is windows. +/// The SELinux context to be applied to the container. +/// If unspecified, the container runtime will allocate a random SELinux context for each +/// container. May also be set in PodSecurityContext. If set in both SecurityContext and +/// PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextSeLinuxOptions { /// Level is SELinux level label that applies to the container. @@ -7798,42 +11290,71 @@ pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextSeLinuxOptions { pub user: Option, } -/// The seccomp options to use by this container. If seccomp options are provided at both the pod & container level, the container options override the pod options. Note that this field cannot be set when spec.os.name is windows. +/// The seccomp options to use by this container. If seccomp options are +/// provided at both the pod & container level, the container options +/// override the pod options. +/// Note that this field cannot be set when spec.os.name is windows. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextSeccompProfile { - /// localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must be set if type is "Localhost". Must NOT be set for any other type. + /// localhostProfile indicates a profile defined in a file on the node should be used. + /// The profile must be preconfigured on the node to work. + /// Must be a descending path, relative to the kubelet's configured seccomp profile location. + /// Must be set if type is "Localhost". Must NOT be set for any other type. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")] pub localhost_profile: Option, - /// type indicates which kind of seccomp profile will be applied. Valid options are: - /// Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied. + /// type indicates which kind of seccomp profile will be applied. + /// Valid options are: + /// + /// + /// Localhost - a profile defined in a file on the node should be used. + /// RuntimeDefault - the container runtime default profile should be used. + /// Unconfined - no profile should be applied. #[serde(rename = "type")] pub r#type: String, } -/// The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux. +/// The Windows specific settings applied to all containers. +/// If unspecified, the options from the PodSecurityContext will be used. +/// If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +/// Note that this field cannot be set when spec.os.name is linux. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsSecurityContextWindowsOptions { - /// GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. + /// GMSACredentialSpec is where the GMSA admission webhook + /// (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the + /// GMSA credential spec named by the GMSACredentialSpecName field. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")] pub gmsa_credential_spec: Option, /// GMSACredentialSpecName is the name of the GMSA credential spec to use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")] pub gmsa_credential_spec_name: Option, - /// HostProcess determines if a container should be run as a 'Host Process' container. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true. + /// HostProcess determines if a container should be run as a 'Host Process' container. + /// All of a Pod's containers must have the same effective HostProcess value + /// (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). + /// In addition, if HostProcess is true then HostNetwork must also be set to true. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")] pub host_process: Option, - /// The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. + /// The UserName in Windows to run the entrypoint of the container process. + /// Defaults to the user specified in image metadata if unspecified. + /// May also be set in PodSecurityContext. If set in both SecurityContext and + /// PodSecurityContext, the value specified in SecurityContext takes precedence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")] pub run_as_user_name: Option, } -/// StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +/// StartupProbe indicates that the Pod has successfully initialized. +/// If specified, no other probes are executed until this completes successfully. +/// If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. +/// This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, +/// when it might take a long time to load data or warm a cache, than during steady-state operation. +/// This cannot be updated. +/// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbe { /// Exec specifies the action to take. #[serde(default, skip_serializing_if = "Option::is_none")] pub exec: Option, - /// Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. + /// Minimum consecutive failures for the probe to be considered failed after having succeeded. + /// Defaults to 3. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "failureThreshold")] pub failure_threshold: Option, /// GRPC specifies an action involving a GRPC port. @@ -7842,22 +11363,36 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbe { /// HTTPGet specifies the http request to perform. #[serde(default, skip_serializing_if = "Option::is_none", rename = "httpGet")] pub http_get: Option, - /// Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after the container has started before liveness probes are initiated. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "initialDelaySeconds")] pub initial_delay_seconds: Option, - /// How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. + /// How often (in seconds) to perform the probe. + /// Default to 10 seconds. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "periodSeconds")] pub period_seconds: Option, - /// Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. + /// Minimum consecutive successes for the probe to be considered successful after having failed. + /// Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1. #[serde(default, skip_serializing_if = "Option::is_none", rename = "successThreshold")] pub success_threshold: Option, /// TCPSocket specifies an action involving a TCP port. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tcpSocket")] pub tcp_socket: Option, - /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this value overrides the value provided by the pod spec. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down). This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. + /// Optional duration in seconds the pod needs to terminate gracefully upon probe failure. + /// The grace period is the duration in seconds after the processes running in the pod are sent + /// a termination signal and the time when the processes are forcibly halted with a kill signal. + /// Set this value longer than the expected cleanup time for your process. + /// If this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this + /// value overrides the value provided by the pod spec. + /// Value must be non-negative integer. The value zero indicates stop immediately via + /// the kill signal (no opportunity to shut down). + /// This is a beta field and requires enabling ProbeTerminationGracePeriod feature gate. + /// Minimum value is 1. spec.terminationGracePeriodSeconds is used if unset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminationGracePeriodSeconds")] pub termination_grace_period_seconds: Option, - /// Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes + /// Number of seconds after which the probe times out. + /// Defaults to 1 second. Minimum value is 1. + /// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes #[serde(default, skip_serializing_if = "Option::is_none", rename = "timeoutSeconds")] pub timeout_seconds: Option, } @@ -7865,7 +11400,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbe { /// Exec specifies the action to take. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeExec { - /// Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. + /// Command is the command line to execute inside the container, the working directory for the + /// command is root ('/') in the container's filesystem. The command is simply exec'd, it is + /// not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use + /// a shell, you need to explicitly call out to that shell. + /// Exit status of 0 is treated as live/healthy and non-zero is unhealthy. #[serde(default, skip_serializing_if = "Option::is_none")] pub command: Option>, } @@ -7875,8 +11414,11 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeExec { pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeGrpc { /// Port number of the gRPC service. Number must be in the range 1 to 65535. pub port: i32, - /// Service is the name of the service to place in the gRPC HealthCheckRequest (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). - /// If this is not specified, the default behavior is defined by gRPC. + /// Service is the name of the service to place in the gRPC HealthCheckRequest + /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). + /// + /// + /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, } @@ -7884,7 +11426,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeGrpc { /// HTTPGet specifies the http request to perform. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeHttpGet { - /// Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. + /// Host name to connect to, defaults to the pod IP. You probably want to set + /// "Host" in httpHeaders instead. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, /// Custom headers to set in the request. HTTP allows repeated headers. @@ -7893,9 +11436,12 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeHttpGet { /// Path to access on the HTTP server. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, - /// Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Name or number of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, - /// Scheme to use for connecting to the host. Defaults to HTTP. + /// Scheme to use for connecting to the host. + /// Defaults to HTTP. #[serde(default, skip_serializing_if = "Option::is_none")] pub scheme: Option, } @@ -7903,7 +11449,8 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeHttpGet { /// HTTPHeader describes a custom header to be used in HTTP probes #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeHttpGetHttpHeaders { - /// The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header. + /// The header field name. + /// This will be canonicalized upon output, so case-variant names will be understood as the same header. pub name: String, /// The header field value pub value: String, @@ -7915,7 +11462,9 @@ pub struct AerospikeClusterStatusPodSpecSidecarsStartupProbeTcpSocket { /// Optional: Host name to connect to, defaults to the pod IP. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + /// Number or name of the port to access on the container. + /// Number must be in the range 1 to 65535. + /// Name must be an IANA_SVC_NAME. pub port: IntOrString, } @@ -7932,46 +11481,67 @@ pub struct AerospikeClusterStatusPodSpecSidecarsVolumeDevices { /// VolumeMount describes a mounting of a Volume within a container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecSidecarsVolumeMounts { - /// Path within the container at which the volume should be mounted. Must not contain ':'. + /// Path within the container at which the volume should be mounted. Must + /// not contain ':'. #[serde(rename = "mountPath")] pub mount_path: String, - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, /// This must match the Name of a Volume. pub name: String, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// Pods has Aerospike specific status of the pods. This is map instead of the conventional map as list convention to allow each pod to patch update its own status. The map key is the name of the pod. +/// Pods has Aerospike specific status of the pods. +/// This is map instead of the conventional map as list convention to allow each pod to patch update its own +/// status. The map key is the name of the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusPods { /// Aerospike server instance summary for this pod. @@ -7980,7 +11550,9 @@ pub struct AerospikeClusterStatusPods { /// AerospikeConfigHash is ripemd160 hash of aerospikeConfig used by this pod #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeConfigHash")] pub aerospike_config_hash: Option, - /// DirtyVolumes is the list of volume names that are removed from aerospike namespaces and will be cleaned during init if they are reused in any namespace. + /// DirtyVolumes is the list of volume names that are removed + /// from aerospike namespaces and will be cleaned during init + /// if they are reused in any namespace. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dirtyVolumes")] pub dirty_volumes: Option>, /// HostExternalIP of the K8s host this pod is scheduled on. @@ -7995,7 +11567,8 @@ pub struct AerospikeClusterStatusPods { /// InitializedVolumePaths is deprecated version of InitializedVolumes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "initializedVolumePaths")] pub initialized_volume_paths: Option>, - /// InitializedVolumes is the list of volume names that have already been initialized. + /// InitializedVolumes is the list of volume names that have already been + /// initialized. #[serde(default, skip_serializing_if = "Option::is_none", rename = "initializedVolumes")] pub initialized_volumes: Option>, /// NetworkPolicyHash is ripemd160 hash of NetworkPolicy used by this pod @@ -8044,7 +11617,8 @@ pub struct AerospikeClusterStatusPodsAerospike { pub tls_name: Option, } -/// RackConfig Configures the operator to deploy rack aware Aerospike cluster. Pods will be deployed in given racks based on given configuration +/// RackConfig Configures the operator to deploy rack aware Aerospike cluster. +/// Pods will be deployed in given racks based on given configuration #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfig { /// List of Aerospike namespaces for which rack feature will be enabled @@ -8064,7 +11638,8 @@ pub struct AerospikeClusterStatusRackConfigRacks { /// AerospikeConfig overrides the common AerospikeConfig for this Rack. This is merged with global Aerospike config. #[serde(default, skip_serializing_if = "Option::is_none", rename = "aerospikeConfig")] pub aerospike_config: Option>, - /// Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global Aerospike config + /// Effective/operative Aerospike config. The resultant is a merge of rack Aerospike config and the global + /// Aerospike config #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveAerospikeConfig")] pub effective_aerospike_config: Option>, /// Effective/operative PodSpec. The resultant is user input if specified else global PodSpec @@ -8081,7 +11656,8 @@ pub struct AerospikeClusterStatusRackConfigRacks { /// PodSpec to use for the pods in this rack. This value overwrites the global storage config #[serde(default, skip_serializing_if = "Option::is_none", rename = "podSpec")] pub pod_spec: Option, - /// RackLabel for setting rack affinity. Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: } + /// RackLabel for setting rack affinity. + /// Rack pods will be deployed in k8s nodes having rackLabel {aerospike.com/rack-label: } #[serde(default, skip_serializing_if = "Option::is_none", rename = "rackLabel")] pub rack_label: Option, /// Region name for setting rack affinity. Rack pods will be deployed to given Region @@ -8126,15 +11702,28 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -8154,31 +11743,47 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffi pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -8186,7 +11791,9 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffi pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -8197,26 +11804,38 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffi pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -8224,10 +11843,24 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityNodeAffi /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -8238,144 +11871,244 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffin /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -8383,10 +12116,24 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAffin /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -8397,164 +12144,274 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiA /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectivePodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } @@ -8579,7 +12436,8 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -8591,10 +12449,12 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageBlockVolumePolic /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -8654,7 +12514,8 @@ pub enum AerospikeClusterStatusRackConfigRacksEffectiveStorageBlockVolumePolicyW /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -8666,10 +12527,12 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageFilesystemVolume /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -8731,7 +12594,8 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -8746,7 +12610,8 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -8757,7 +12622,8 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -8773,16 +12639,25 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesAerospike #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -8825,16 +12700,25 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesInitConta #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -8865,16 +12749,25 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSidecars #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -8885,14 +12778,19 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -8900,13 +12798,27 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -8919,20 +12831,37 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceCon pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -8940,7 +12869,8 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceEmp /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -8974,37 +12904,61 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourcePer /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -9014,10 +12968,18 @@ pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceSec pub struct AerospikeClusterStatusRackConfigRacksEffectiveStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -9064,15 +13026,28 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinity { /// Describes node affinity scheduling rules for the pod. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node matches the corresponding matchExpressions; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to an update), the system + /// may or may not try to eventually evict the pod from its node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option, } -/// An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). +/// An empty preferred scheduling term matches all objects with implicit weight 0 +/// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution { /// A node selector term, associated with the corresponding weight. @@ -9092,31 +13067,47 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityPrefe pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node. +/// If the affinity requirements specified by this field are not met at +/// scheduling time, the pod will not be scheduled onto the node. +/// If the affinity requirements specified by this field cease to be met +/// at some point during pod execution (e.g. due to an update), the system +/// may or may not try to eventually evict the pod from its node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution { /// Required. A list of node selector terms. The terms are ORed. @@ -9124,7 +13115,9 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequi pub node_selector_terms: Vec, } -/// A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. +/// A null or empty node selector term matches no objects. The requirements of +/// them are ANDed. +/// The TopologySelectorTerm type implements a subset of the NodeSelectorTerm. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms { /// A list of node selector requirements by node's labels. @@ -9135,26 +13128,38 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequi pub match_fields: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A node selector requirement is a selector that contains values, a key, and an operator +/// that relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields { /// The label key that the selector applies to. pub key: String, - /// Represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. + /// Represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. pub operator: String, - /// An array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. If the operator is Gt or Lt, the values array must have a single element, which will be interpreted as an integer. This array is replaced during a strategic merge patch. + /// An array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. If the operator is Gt or Lt, the values + /// array must have a single element, which will be interpreted as an integer. + /// This array is replaced during a strategic merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -9162,10 +13167,24 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityNodeAffinityRequi /// Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -9176,144 +13195,244 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPrefer /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -9321,10 +13440,24 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAffinityRequir /// Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinity { - /// The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred. + /// The scheduler will prefer to schedule pods to nodes that satisfy + /// the anti-affinity expressions specified by this field, but it may choose + /// a node that violates one or more of the expressions. The node that is + /// most preferred is the one with the greatest sum of weights, i.e. + /// for each node that meets all of the scheduling requirements (resource + /// request, requiredDuringScheduling anti-affinity expressions, etc.), + /// compute a sum by iterating through the elements of this field and adding + /// "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the + /// node(s) with the highest sum are the most preferred. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preferredDuringSchedulingIgnoredDuringExecution")] pub preferred_during_scheduling_ignored_during_execution: Option>, - /// If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied. + /// If the anti-affinity requirements specified by this field are not met at + /// scheduling time, the pod will not be scheduled onto the node. + /// If the anti-affinity requirements specified by this field cease to be met + /// at some point during pod execution (e.g. due to a pod label update), the + /// system may or may not try to eventually evict the pod from its node. + /// When there are multiple elements, the lists of nodes corresponding to each + /// podAffinityTerm are intersected, i.e. all terms must be satisfied. #[serde(default, skip_serializing_if = "Option::is_none", rename = "requiredDuringSchedulingIgnoredDuringExecution")] pub required_during_scheduling_ignored_during_execution: Option>, } @@ -9335,164 +13468,274 @@ pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPr /// Required. A pod affinity term, associated with the corresponding weight. #[serde(rename = "podAffinityTerm")] pub pod_affinity_term: AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm, - /// weight associated with matching the corresponding podAffinityTerm, in the range 1-100. + /// weight associated with matching the corresponding podAffinityTerm, + /// in the range 1-100. pub weight: i32, } /// Required. A pod affinity term, associated with the corresponding weight. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key matches that of any node on which a pod of the set of pods is running +/// Defines a set of pods (namely those matching the labelSelector +/// relative to the given namespace(s)) that this pod should be +/// co-located (affinity) or not co-located (anti-affinity) with, +/// where co-located is defined as running on a node whose value of +/// the label with key matches that of any node on which +/// a pod of the set of pods is running #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution { - /// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. + /// A label query over a set of resources, in this case pods. + /// If it's null, this PodAffinityTerm matches with no Pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelector")] pub label_selector: Option, - /// MatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. Also, MatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key in (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MatchLabelKeys and LabelSelector. + /// Also, MatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, - /// MismatchLabelKeys is a set of pod label keys to select which pods will be taken into consideration. The keys are used to lookup values from the incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` to select the group of existing pods which pods will be taken into consideration for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming pod labels will be ignored. The default value is empty. The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// MismatchLabelKeys is a set of pod label keys to select which pods will + /// be taken into consideration. The keys are used to lookup values from the + /// incoming pod labels, those key-value labels are merged with `LabelSelector` as `key notin (value)` + /// to select the group of existing pods which pods will be taken into consideration + /// for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming + /// pod labels will be ignored. The default value is empty. + /// The same key is forbidden to exist in both MismatchLabelKeys and LabelSelector. + /// Also, MismatchLabelKeys cannot be set when LabelSelector isn't set. + /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, - /// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. + /// A label query over the set of namespaces that the term applies to. + /// The term is applied to the union of the namespaces selected by this field + /// and the ones listed in the namespaces field. + /// null selector and null or empty namespaces list means "this pod's namespace". + /// An empty selector ({}) matches all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// namespaces specifies a static list of namespace names that the term applies to. The term is applied to the union of the namespaces listed in this field and the ones selected by namespaceSelector. null or empty namespaces list and null namespaceSelector means "this pod's namespace". + /// namespaces specifies a static list of namespace names that the term applies to. + /// The term is applied to the union of the namespaces listed in this field + /// and the ones selected by namespaceSelector. + /// null or empty namespaces list and null namespaceSelector means "this pod's namespace". #[serde(default, skip_serializing_if = "Option::is_none")] pub namespaces: Option>, - /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching the labelSelector in the specified namespaces, where co-located is defined as running on a node whose value of the label with key topologyKey matches that of any node on which any of the selected pods is running. Empty topologyKey is not allowed. + /// This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching + /// the labelSelector in the specified namespaces, where co-located is defined as running on a node + /// whose value of the label with key topologyKey matches that of any node on which any of the + /// selected pods is running. + /// Empty topologyKey is not allowed. #[serde(rename = "topologyKey")] pub topology_key: String, } -/// A label query over a set of resources, in this case pods. If it's null, this PodAffinityTerm matches with no Pods. +/// A label query over a set of resources, in this case pods. +/// If it's null, this PodAffinityTerm matches with no Pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label query over the set of namespaces that the term applies to. The term is applied to the union of the namespaces selected by this field and the ones listed in the namespaces field. null selector and null or empty namespaces list means "this pod's namespace". An empty selector ({}) matches all namespaces. +/// A label query over the set of namespaces that the term applies to. +/// The term is applied to the union of the namespaces selected by this field +/// and the ones listed in the namespaces field. +/// null selector and null or empty namespaces list means "this pod's namespace". +/// An empty selector ({}) matches all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// The pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . +/// The pod this Toleration is attached to tolerates any taint that matches +/// the triple using the matching operator . #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksPodSpecTolerations { - /// Effect indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + /// Effect indicates the taint effect to match. Empty means match all taint effects. + /// When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. #[serde(default, skip_serializing_if = "Option::is_none")] pub effect: Option, - /// Key is the taint key that the toleration applies to. Empty means match all taint keys. If the key is empty, operator must be Exists; this combination means to match all values and all keys. + /// Key is the taint key that the toleration applies to. Empty means match all taint keys. + /// If the key is empty, operator must be Exists; this combination means to match all values and all keys. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, - /// Operator represents a key's relationship to the value. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. + /// Operator represents a key's relationship to the value. + /// Valid operators are Exists and Equal. Defaults to Equal. + /// Exists is equivalent to wildcard for value, so that a pod can + /// tolerate all taints of a particular category. #[serde(default, skip_serializing_if = "Option::is_none")] pub operator: Option, - /// TolerationSeconds represents the period of time the toleration (which must be of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, it is not set, which means tolerate the taint forever (do not evict). Zero and negative values will be treated as 0 (evict immediately) by the system. + /// TolerationSeconds represents the period of time the toleration (which must be + /// of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + /// it is not set, which means tolerate the taint forever (do not evict). Zero and + /// negative values will be treated as 0 (evict immediately) by the system. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tolerationSeconds")] pub toleration_seconds: Option, - /// Value is the taint value the toleration matches to. If the operator is Exists, the value should be empty, otherwise just a regular string. + /// Value is the taint value the toleration matches to. + /// If the operator is Exists, the value should be empty, otherwise just a regular string. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } @@ -9517,7 +13760,8 @@ pub struct AerospikeClusterStatusRackConfigRacksStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -9529,10 +13773,12 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageBlockVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -9592,7 +13838,8 @@ pub enum AerospikeClusterStatusRackConfigRacksStorageBlockVolumePolicyWipeMethod /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -9604,10 +13851,12 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageFilesystemVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -9669,7 +13918,8 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -9684,7 +13934,8 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -9695,7 +13946,8 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -9711,16 +13963,25 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesAerospike { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -9763,16 +14024,25 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesInitContainers { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -9803,16 +14073,25 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSidecars { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -9823,14 +14102,19 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -9838,13 +14122,27 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -9857,20 +14155,37 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceConfigMap { pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -9878,7 +14193,8 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceEmptyDir { /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -9912,37 +14228,61 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourcePersistentVo /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -9952,10 +14292,18 @@ pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceSecret { pub struct AerospikeClusterStatusRackConfigRacksStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -9971,18 +14319,31 @@ pub enum AerospikeClusterStatusRackConfigRacksStorageVolumesWipeMethod { DeleteFiles, } -/// Define resources requests and limits for Aerospike Server Container. Please contact aerospike for proper sizing exercise Only Memory and Cpu resources can be given Deprecated: Resources field is now part of containerSpec +/// Define resources requests and limits for Aerospike Server Container. +/// Please contact aerospike for proper sizing exercise +/// Only Memory and Cpu resources can be given +/// Deprecated: Resources field is now part of containerSpec #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusResources { - /// Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. - /// This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - /// This field is immutable. It can only be set for containers. + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// + /// + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// + /// + /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, - /// Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub limits: Option>, - /// Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ #[serde(default, skip_serializing_if = "Option::is_none")] pub requests: Option>, } @@ -9990,24 +14351,30 @@ pub struct AerospikeClusterStatusResources { /// ResourceClaim references one entry in PodSpec.ResourceClaims. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusResourcesClaims { - /// Name must match the name of one entry in pod.spec.resourceClaims of the Pod where this field is used. It makes that resource available inside a container. + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. pub name: String, } /// SeedsFinderServices describes services which are used for seeding Aerospike nodes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusSeedsFinderServices { - /// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. + /// LoadBalancer created to discover Aerospike Cluster nodes from outside of + /// Kubernetes cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancer")] pub load_balancer: Option, } -/// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. +/// LoadBalancer created to discover Aerospike Cluster nodes from outside of +/// Kubernetes cluster. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusSeedsFinderServicesLoadBalancer { #[serde(default, skip_serializing_if = "Option::is_none")] pub annotations: Option>, - /// ServiceExternalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's "externally-facing" addresses (NodePorts, ExternalIPs, and LoadBalancer IPs. + /// ServiceExternalTrafficPolicy describes how nodes distribute service traffic they + /// receive on one of the Service's "externally-facing" addresses (NodePorts, ExternalIPs, + /// and LoadBalancer IPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "externalTrafficPolicy")] pub external_traffic_policy: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancerSourceRanges")] @@ -10015,12 +14382,14 @@ pub struct AerospikeClusterStatusSeedsFinderServicesLoadBalancer { /// Port Exposed port on load balancer. If not specified TargetPort is used. #[serde(default, skip_serializing_if = "Option::is_none")] pub port: Option, - /// TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. If there is no tls port configured then regular port from network.service is used. + /// TargetPort Target port. If not specified the tls-port of network.service stanza is used from Aerospike config. + /// If there is no tls port configured then regular port from network.service is used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetPort")] pub target_port: Option, } -/// LoadBalancer created to discover Aerospike Cluster nodes from outside of Kubernetes cluster. +/// LoadBalancer created to discover Aerospike Cluster nodes from outside of +/// Kubernetes cluster. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum AerospikeClusterStatusSeedsFinderServicesLoadBalancerExternalTrafficPolicy { Local, @@ -10047,7 +14416,8 @@ pub struct AerospikeClusterStatusStorage { /// BlockVolumePolicy contains default policies for block volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageBlockVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -10059,10 +14429,12 @@ pub struct AerospikeClusterStatusStorageBlockVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -10122,7 +14494,8 @@ pub enum AerospikeClusterStatusStorageBlockVolumePolicyWipeMethod { /// FileSystemVolumePolicy contains default policies for filesystem volumes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageFilesystemVolumePolicy { - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -10134,10 +14507,12 @@ pub struct AerospikeClusterStatusStorageFilesystemVolumePolicy { /// Effective/operative value to use as the volume wipe method after applying defaults. #[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveWipeMethod")] pub effective_wipe_method: Option, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -10199,7 +14574,8 @@ pub struct AerospikeClusterStatusStorageVolumes { /// Aerospike attachment of this volume on Aerospike server container. #[serde(default, skip_serializing_if = "Option::is_none")] pub aerospike: Option, - /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is terminated and removed from the cluster. + /// CascadeDelete determines if the persistent volumes are deleted after the pod this volume binds to is + /// terminated and removed from the cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cascadeDelete")] pub cascade_delete: Option, /// Effective/operative value to use for cascade delete after applying defaults. @@ -10214,7 +14590,8 @@ pub struct AerospikeClusterStatusStorageVolumes { /// InitContainers are additional init containers where this volume will be mounted #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the first time. Defaults to "none". + /// InitMethod determines how volumes attached to Aerospike server pods are initialized when the pods come up the + /// first time. Defaults to "none". #[serde(default, skip_serializing_if = "Option::is_none", rename = "initMethod")] pub init_method: Option, /// Name for this volume, Name or path should be given. @@ -10225,7 +14602,8 @@ pub struct AerospikeClusterStatusStorageVolumes { /// Source of this volume. #[serde(default, skip_serializing_if = "Option::is_none")] pub source: Option, - /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format changes. + /// WipeMethod determines how volumes attached to Aerospike server pods are wiped for dealing with storage format + /// changes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wipeMethod")] pub wipe_method: Option, } @@ -10241,16 +14619,25 @@ pub struct AerospikeClusterStatusStorageVolumesAerospike { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesAerospikeMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -10293,16 +14680,25 @@ pub struct AerospikeClusterStatusStorageVolumesInitContainers { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesInitContainersMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -10333,16 +14729,25 @@ pub struct AerospikeClusterStatusStorageVolumesSidecars { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSidecarsMountOptions { - /// mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10. + /// mountPropagation determines how mounts are propagated from the host + /// to container and the other way around. + /// When not set, MountPropagationNone is used. + /// This field is beta in 1.10. #[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")] pub mount_propagation: Option, - /// Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. + /// Mounted read-only if true, read-write otherwise (false or unspecified). + /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")] pub read_only: Option, - /// Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). + /// Path within the volume from which the container's volume should be mounted. + /// Defaults to "" (volume's root). #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")] pub sub_path: Option, - /// Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $( VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. + /// Expanded path within the volume from which the container's volume should be mounted. + /// Behaves similarly to SubPath but environment variable references $( + /// VAR_NAME) are expanded using the container's environment. + /// Defaults to "" (volume's root). + /// SubPathExpr and SubPath are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")] pub sub_path_expr: Option, } @@ -10353,14 +14758,19 @@ pub struct AerospikeClusterStatusStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")] pub config_map: Option, - /// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// EmptyDir represents a temporary directory that shares a pod's lifetime. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "emptyDir")] pub empty_dir: Option, /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolume")] pub persistent_volume: Option, - /// Adapts a Secret into a volume. - /// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. + /// Adapts a Secret into a volume. + /// + /// + /// The contents of the target Secret's Data field will be presented in a volume + /// as files using the keys in the Data field as the file names. + /// Secret volumes support ownership management and SELinux relabeling. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, } @@ -10368,13 +14778,27 @@ pub struct AerospikeClusterStatusStorageVolumesSource { /// ConfigMap represents a configMap that should populate this volume #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSourceConfigMap { - /// defaultMode is optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items if unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items if unspecified, each key-value pair in the Data field of the referenced + /// ConfigMap will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the ConfigMap, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? + /// Name of the referent. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Add other useful fields. apiVersion, kind, uid? #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -10387,20 +14811,37 @@ pub struct AerospikeClusterStatusStorageVolumesSourceConfigMap { pub struct AerospikeClusterStatusStorageVolumesSourceConfigMapItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } -/// EmptyDir represents a temporary directory that shares a pod's lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir +/// EmptyDir represents a temporary directory that shares a pod's lifetime. +/// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSourceEmptyDir { - /// medium represents what type of storage medium should back this directory. The default is "" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// medium represents what type of storage medium should back this directory. + /// The default is "" which means to use the node's default medium. + /// Must be an empty string (default) or Memory. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none")] pub medium: Option, - /// sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir + /// sizeLimit is the total amount of local storage required for this EmptyDir volume. + /// The size limit is also applicable for memory medium. + /// The maximum usage on memory medium EmptyDir would be the minimum value between + /// the SizeLimit specified here and the sum of memory limits of all containers in a pod. + /// The default is nil which means that the limit is undefined. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir #[serde(default, skip_serializing_if = "Option::is_none", rename = "sizeLimit")] pub size_limit: Option, } @@ -10408,7 +14849,8 @@ pub struct AerospikeClusterStatusStorageVolumesSourceEmptyDir { /// PersistentVolumeSpec describes a persistent volume to claim and attach to Aerospike pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSourcePersistentVolume { - /// Name for creating PVC for this volume, Name or path should be given Name string `json:"name"` + /// Name for creating PVC for this volume, Name or path should be given + /// Name string `json:"name"` #[serde(default, skip_serializing_if = "Option::is_none", rename = "accessModes")] pub access_modes: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] @@ -10442,37 +14884,61 @@ pub struct AerospikeClusterStatusStorageVolumesSourcePersistentVolumeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSourcePersistentVolumeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// Adapts a Secret into a volume. -/// The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling. +/// Adapts a Secret into a volume. +/// +/// +/// The contents of the target Secret's Data field will be presented in a volume +/// as files using the keys in the Data field as the file names. +/// Secret volumes support ownership management and SELinux relabeling. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusStorageVolumesSourceSecret { - /// defaultMode is Optional: mode bits used to set permissions on created files by default. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// defaultMode is Optional: mode bits used to set permissions on created files by default. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values + /// for mode bits. Defaults to 0644. + /// Directories within the path are not affected by this setting. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// items If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. Paths must be relative and may not contain the '..' path or start with '..'. + /// items If unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. #[serde(default, skip_serializing_if = "Option::is_none")] pub items: Option>, /// optional field specify whether the Secret or its keys must be defined #[serde(default, skip_serializing_if = "Option::is_none")] pub optional: Option, - /// secretName is the name of the secret in the pod's namespace to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret + /// secretName is the name of the secret in the pod's namespace to use. + /// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")] pub secret_name: Option, } @@ -10482,10 +14948,18 @@ pub struct AerospikeClusterStatusStorageVolumesSourceSecret { pub struct AerospikeClusterStatusStorageVolumesSourceSecretItems { /// key is the key to project. pub key: String, - /// mode is Optional: mode bits used to set permissions on this file. Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none")] pub mode: Option, - /// path is the relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. pub path: String, } @@ -10504,10 +14978,12 @@ pub enum AerospikeClusterStatusStorageVolumesWipeMethod { /// ValidationPolicy controls validation of the Aerospike cluster resource. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AerospikeClusterStatusValidationPolicy { - /// skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. Defaults to false. + /// skipWorkDirValidate validates that Aerospike work directory is mounted on a persistent file storage. + /// Defaults to false. #[serde(rename = "skipWorkDirValidate")] pub skip_work_dir_validate: bool, - /// ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. Defaults to false. + /// ValidateXdrDigestLogFile validates that xdr digest log file is mounted on a persistent file storage. + /// Defaults to false. #[serde(rename = "skipXdrDlogFileValidate")] pub skip_xdr_dlog_file_validate: bool, } diff --git a/kube-custom-resources-rs/src/atlasmap_io/v1alpha1/atlasmaps.rs b/kube-custom-resources-rs/src/atlasmap_io/v1alpha1/atlasmaps.rs index dcf938ada..c349ea6d6 100644 --- a/kube-custom-resources-rs/src/atlasmap_io/v1alpha1/atlasmaps.rs +++ b/kube-custom-resources-rs/src/atlasmap_io/v1alpha1/atlasmaps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/atlasmap/atlasmap-operator/atlasmap.io/v1alpha1/atlasmaps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/auth_ops42_org/v1alpha1/awsauthsyncconfigs.rs b/kube-custom-resources-rs/src/auth_ops42_org/v1alpha1/awsauthsyncconfigs.rs index 71e4b1632..00c06764f 100644 --- a/kube-custom-resources-rs/src/auth_ops42_org/v1alpha1/awsauthsyncconfigs.rs +++ b/kube-custom-resources-rs/src/auth_ops42_org/v1alpha1/awsauthsyncconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gp42/aws-auth-operator/auth.ops42.org/v1alpha1/awsauthsyncconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/authzed_com/v1alpha1/spicedbclusters.rs b/kube-custom-resources-rs/src/authzed_com/v1alpha1/spicedbclusters.rs index 640aca18c..24ea0def0 100644 --- a/kube-custom-resources-rs/src/authzed_com/v1alpha1/spicedbclusters.rs +++ b/kube-custom-resources-rs/src/authzed_com/v1alpha1/spicedbclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/authzed/spicedb-operator/authzed.com/v1alpha1/spicedbclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/automation_kubensync_com/v1alpha1/managedresources.rs b/kube-custom-resources-rs/src/automation_kubensync_com/v1alpha1/managedresources.rs index b213b29c3..a0e903dbd 100644 --- a/kube-custom-resources-rs/src/automation_kubensync_com/v1alpha1/managedresources.rs +++ b/kube-custom-resources-rs/src/automation_kubensync_com/v1alpha1/managedresources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/eryalito/kubensync-operator/automation.kubensync.com/v1alpha1/managedresources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalercheckpoints.rs b/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalercheckpoints.rs index 7570b47ba..8b0899d57 100644 --- a/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalercheckpoints.rs +++ b/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalercheckpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes/autoscaler/autoscaling.k8s.io/v1/verticalpodautoscalercheckpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalers.rs b/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalers.rs index f46e517b1..037752944 100644 --- a/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalers.rs +++ b/kube-custom-resources-rs/src/autoscaling_k8s_io/v1/verticalpodautoscalers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes/autoscaler/autoscaling.k8s.io/v1/verticalpodautoscalers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/autoscaling_k8s_io/v1beta2/verticalpodautoscalercheckpoints.rs b/kube-custom-resources-rs/src/autoscaling_k8s_io/v1beta2/verticalpodautoscalercheckpoints.rs index 515ee81e4..ed93c42ab 100644 --- a/kube-custom-resources-rs/src/autoscaling_k8s_io/v1beta2/verticalpodautoscalercheckpoints.rs +++ b/kube-custom-resources-rs/src/autoscaling_k8s_io/v1beta2/verticalpodautoscalercheckpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes/autoscaler/autoscaling.k8s.io/v1beta2/verticalpodautoscalercheckpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/autoscaling_k8s_io/v1beta2/verticalpodautoscalers.rs b/kube-custom-resources-rs/src/autoscaling_k8s_io/v1beta2/verticalpodautoscalers.rs index 31021d23b..2d50faf7c 100644 --- a/kube-custom-resources-rs/src/autoscaling_k8s_io/v1beta2/verticalpodautoscalers.rs +++ b/kube-custom-resources-rs/src/autoscaling_k8s_io/v1beta2/verticalpodautoscalers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes/autoscaler/autoscaling.k8s.io/v1beta2/verticalpodautoscalers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/autoscaling_karmada_io/v1alpha1/cronfederatedhpas.rs b/kube-custom-resources-rs/src/autoscaling_karmada_io/v1alpha1/cronfederatedhpas.rs index 806e5c33f..55f4b7582 100644 --- a/kube-custom-resources-rs/src/autoscaling_karmada_io/v1alpha1/cronfederatedhpas.rs +++ b/kube-custom-resources-rs/src/autoscaling_karmada_io/v1alpha1/cronfederatedhpas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/autoscaling.karmada.io/v1alpha1/cronfederatedhpas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/autoscaling_karmada_io/v1alpha1/federatedhpas.rs b/kube-custom-resources-rs/src/autoscaling_karmada_io/v1alpha1/federatedhpas.rs index 7acde03be..5761f1036 100644 --- a/kube-custom-resources-rs/src/autoscaling_karmada_io/v1alpha1/federatedhpas.rs +++ b/kube-custom-resources-rs/src/autoscaling_karmada_io/v1alpha1/federatedhpas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/autoscaling.karmada.io/v1alpha1/federatedhpas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxbackups.rs b/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxbackups.rs index 36b3fe08c..62befa1a4 100644 --- a/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxbackups.rs +++ b/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ansible/awx-operator/awx.ansible.com/v1beta1/awxbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxrestores.rs b/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxrestores.rs index fdf96c2ba..c145d9fdf 100644 --- a/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxrestores.rs +++ b/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxrestores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ansible/awx-operator/awx.ansible.com/v1beta1/awxrestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxs.rs b/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxs.rs index a69c29eb2..ada1ec525 100644 --- a/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxs.rs +++ b/kube-custom-resources-rs/src/awx_ansible_com/v1beta1/awxs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ansible/awx-operator/awx.ansible.com/v1beta1/awxs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/apimgmtapis.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/apimgmtapis.rs index 85bfad63a..a855bbcd6 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/apimgmtapis.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/apimgmtapis.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/apimgmtapis.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/apimservices.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/apimservices.rs index cfc0c8ce7..3aae7e02c 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/apimservices.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/apimservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/apimservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/appinsights.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/appinsights.rs index a6caa3777..ad71640a9 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/appinsights.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/appinsights.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/appinsights.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/appinsightsapikeys.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/appinsightsapikeys.rs index ab04101cd..3a5863f9f 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/appinsightsapikeys.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/appinsightsapikeys.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/appinsightsapikeys.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azureloadbalancers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azureloadbalancers.rs index bab82c08b..ec4c8b9b6 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azureloadbalancers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azureloadbalancers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azureloadbalancers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurenetworkinterfaces.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurenetworkinterfaces.rs index 31f0a55cb..df60bf205 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurenetworkinterfaces.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurenetworkinterfaces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azurenetworkinterfaces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurepublicipaddresses.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurepublicipaddresses.rs index c19b8f639..0b5190d25 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurepublicipaddresses.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurepublicipaddresses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azurepublicipaddresses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlactions.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlactions.rs index a56de2d38..9ab6c2f72 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlactions.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlactions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azuresqlactions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqldatabases.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqldatabases.rs index c3098eb87..4341e82f5 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqldatabases.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqldatabases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azuresqldatabases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlfailovergroups.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlfailovergroups.rs index 8c851e301..883e90267 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlfailovergroups.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlfailovergroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azuresqlfailovergroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlfirewallrules.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlfirewallrules.rs index d0fd61327..ab14a6787 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlfirewallrules.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlfirewallrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azuresqlfirewallrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlmanagedusers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlmanagedusers.rs index ca350bcee..9163ab865 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlmanagedusers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlmanagedusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azuresqlmanagedusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlservers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlservers.rs index 48df2709c..0e29fdecf 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlservers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azuresqlservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlusers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlusers.rs index db6ab7a9c..fc7d720ca 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlusers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azuresqlusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlvnetrules.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlvnetrules.rs index 683921ef3..3d295f3e7 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlvnetrules.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azuresqlvnetrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azuresqlvnetrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevirtualmachineextensions.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevirtualmachineextensions.rs index 9f73a8f72..08870242c 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevirtualmachineextensions.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevirtualmachineextensions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azurevirtualmachineextensions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevirtualmachines.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevirtualmachines.rs index 1128cdd28..7f2e8bc20 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevirtualmachines.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevirtualmachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azurevirtualmachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevmscalesets.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevmscalesets.rs index c2d7451d0..366af09ec 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevmscalesets.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/azurevmscalesets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/azurevmscalesets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/blobcontainers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/blobcontainers.rs index d22a17b49..a3981f8e4 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/blobcontainers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/blobcontainers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/blobcontainers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/consumergroups.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/consumergroups.rs index c9d454b13..9c95b0e73 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/consumergroups.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/consumergroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/consumergroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/cosmosdbs.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/cosmosdbs.rs index 44fbf2af6..1a6ba7634 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/cosmosdbs.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/cosmosdbs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/cosmosdbs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/eventhubnamespaces.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/eventhubnamespaces.rs index 0fafa1a56..d2658f556 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/eventhubnamespaces.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/eventhubnamespaces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/eventhubnamespaces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/eventhubs.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/eventhubs.rs index 2eccde711..5bc8419ea 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/eventhubs.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/eventhubs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/eventhubs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/keyvaultkeys.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/keyvaultkeys.rs index 1a8eb008f..edc46fa61 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/keyvaultkeys.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/keyvaultkeys.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/keyvaultkeys.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/keyvaults.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/keyvaults.rs index 09b5d8c10..1853ccd3c 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/keyvaults.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/keyvaults.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/keyvaults.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlaadusers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlaadusers.rs index dac5a6fa8..8ae87a009 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlaadusers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlaadusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/mysqlaadusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqldatabases.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqldatabases.rs index 9702331dc..26deb9f9e 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqldatabases.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqldatabases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/mysqldatabases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlfirewallrules.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlfirewallrules.rs index 187bb1090..2867f7386 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlfirewallrules.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlfirewallrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/mysqlfirewallrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlserveradministrators.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlserveradministrators.rs index 2f7266dde..11198605f 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlserveradministrators.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlserveradministrators.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/mysqlserveradministrators.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlservers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlservers.rs index eb605b25a..5328132af 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlservers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/mysqlservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlusers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlusers.rs index 939eeb73f..bcc51b1de 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlusers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/mysqlusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlvnetrules.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlvnetrules.rs index 1ba7f718f..cc9386024 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlvnetrules.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/mysqlvnetrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/mysqlvnetrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqldatabases.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqldatabases.rs index c2506617a..cfb28fec4 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqldatabases.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqldatabases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/postgresqldatabases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlfirewallrules.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlfirewallrules.rs index 5ae4a83fb..4e1800c08 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlfirewallrules.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlfirewallrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/postgresqlfirewallrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlservers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlservers.rs index 8aa6106c9..9c1f84a4b 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlservers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/postgresqlservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlusers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlusers.rs index b4e32338a..050ed730d 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlusers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/postgresqlusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlvnetrules.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlvnetrules.rs index 271d1801e..67e3e7de2 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlvnetrules.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/postgresqlvnetrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/postgresqlvnetrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/rediscacheactions.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/rediscacheactions.rs index bdaa98085..3c60e4cd1 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/rediscacheactions.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/rediscacheactions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/rediscacheactions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/rediscachefirewallrules.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/rediscachefirewallrules.rs index 47ce67366..30fe3d110 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/rediscachefirewallrules.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/rediscachefirewallrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/rediscachefirewallrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/resourcegroups.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/resourcegroups.rs index 0910fb1e4..b8b8fe7c0 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/resourcegroups.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/resourcegroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/resourcegroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/storageaccounts.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/storageaccounts.rs index d5c84d496..73bc91d7c 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/storageaccounts.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/storageaccounts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/storageaccounts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/virtualnetworks.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/virtualnetworks.rs index 7fb7165c2..9f8ae489c 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/virtualnetworks.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha1/virtualnetworks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha1/virtualnetworks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/blobcontainers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/blobcontainers.rs index cc8980733..a8352650a 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/blobcontainers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/blobcontainers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha2/blobcontainers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlaadusers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlaadusers.rs index 7b5cc6402..aee7ac10e 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlaadusers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlaadusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha2/mysqlaadusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlservers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlservers.rs index b21e73ae6..4ec526712 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlservers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha2/mysqlservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlusers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlusers.rs index fe8a3c7af..ca3029a34 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlusers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/mysqlusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha2/mysqlusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/postgresqlservers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/postgresqlservers.rs index 798f51cb9..f8b0a985a 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/postgresqlservers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1alpha2/postgresqlservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1alpha2/postgresqlservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqldatabases.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqldatabases.rs index 41c746987..71da2832a 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqldatabases.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqldatabases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1beta1/azuresqldatabases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlfailovergroups.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlfailovergroups.rs index 91a30330d..4aea70d33 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlfailovergroups.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlfailovergroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1beta1/azuresqlfailovergroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlfirewallrules.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlfirewallrules.rs index d594e4829..cbd2e981c 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlfirewallrules.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlfirewallrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1beta1/azuresqlfirewallrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlservers.rs b/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlservers.rs index 0d90a6c1b..a943af327 100644 --- a/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlservers.rs +++ b/kube-custom-resources-rs/src/azure_microsoft_com/v1beta1/azuresqlservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Azure/azure-service-operator/azure.microsoft.com/v1beta1/azuresqlservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/b3scale_infra_run/v1/bbbfrontends.rs b/kube-custom-resources-rs/src/b3scale_infra_run/v1/bbbfrontends.rs index 19106fc5e..d3608c69f 100644 --- a/kube-custom-resources-rs/src/b3scale_infra_run/v1/bbbfrontends.rs +++ b/kube-custom-resources-rs/src/b3scale_infra_run/v1/bbbfrontends.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/b3scale/b3scale-operator/b3scale.infra.run/v1/bbbfrontends.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/b3scale_io/v1/bbbfrontends.rs b/kube-custom-resources-rs/src/b3scale_io/v1/bbbfrontends.rs index f90c790de..d3c3ed7c9 100644 --- a/kube-custom-resources-rs/src/b3scale_io/v1/bbbfrontends.rs +++ b/kube-custom-resources-rs/src/b3scale_io/v1/bbbfrontends.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/b3scale/b3scale-operator/b3scale.io/v1/bbbfrontends.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/batch_volcano_sh/v1alpha1/jobs.rs b/kube-custom-resources-rs/src/batch_volcano_sh/v1alpha1/jobs.rs index 06130cefd..c538b3720 100644 --- a/kube-custom-resources-rs/src/batch_volcano_sh/v1alpha1/jobs.rs +++ b/kube-custom-resources-rs/src/batch_volcano_sh/v1alpha1/jobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/volcano-sh/volcano/batch.volcano.sh/v1alpha1/jobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/beat_k8s_elastic_co/v1beta1/beats.rs b/kube-custom-resources-rs/src/beat_k8s_elastic_co/v1beta1/beats.rs index d45973913..7da7bd1aa 100644 --- a/kube-custom-resources-rs/src/beat_k8s_elastic_co/v1beta1/beats.rs +++ b/kube-custom-resources-rs/src/beat_k8s_elastic_co/v1beta1/beats.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/beat.k8s.elastic.co/v1beta1/beats.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/beegfs_csi_netapp_com/v1/beegfsdrivers.rs b/kube-custom-resources-rs/src/beegfs_csi_netapp_com/v1/beegfsdrivers.rs index 6b8a92ce2..bdf7c5749 100644 --- a/kube-custom-resources-rs/src/beegfs_csi_netapp_com/v1/beegfsdrivers.rs +++ b/kube-custom-resources-rs/src/beegfs_csi_netapp_com/v1/beegfsdrivers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ThinkParQ/beegfs-csi-driver/beegfs.csi.netapp.com/v1/beegfsdrivers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/bindablekinds.rs b/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/bindablekinds.rs index da25ef690..068161445 100644 --- a/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/bindablekinds.rs +++ b/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/bindablekinds.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/redhat-developer/service-binding-operator/binding.operators.coreos.com/v1alpha1/bindablekinds.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/servicebindings.rs b/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/servicebindings.rs index 334d332d9..1bc5c25a9 100644 --- a/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/servicebindings.rs +++ b/kube-custom-resources-rs/src/binding_operators_coreos_com/v1alpha1/servicebindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/redhat-developer/service-binding-operator/binding.operators.coreos.com/v1alpha1/servicebindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bitnami_com/v1alpha1/sealedsecrets.rs b/kube-custom-resources-rs/src/bitnami_com/v1alpha1/sealedsecrets.rs index bfb14bcc3..b46bec9fe 100644 --- a/kube-custom-resources-rs/src/bitnami_com/v1alpha1/sealedsecrets.rs +++ b/kube-custom-resources-rs/src/bitnami_com/v1alpha1/sealedsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bitnami-labs/sealed-secrets/bitnami.com/v1alpha1/sealedsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/jobs.rs b/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/jobs.rs index 5cd3468d9..b3c54484c 100644 --- a/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/jobs.rs +++ b/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/jobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/rufio/bmc.tinkerbell.org/v1alpha1/jobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/machines.rs b/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/machines.rs index 3af308933..dabc1543c 100644 --- a/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/machines.rs +++ b/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/machines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/rufio/bmc.tinkerbell.org/v1alpha1/machines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/tasks.rs b/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/tasks.rs index 8c4250138..4d2428726 100644 --- a/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/tasks.rs +++ b/kube-custom-resources-rs/src/bmc_tinkerbell_org/v1alpha1/tasks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/rufio/bmc.tinkerbell.org/v1alpha1/tasks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/boskos_k8s_io/v1/dynamicresourcelifecycles.rs b/kube-custom-resources-rs/src/boskos_k8s_io/v1/dynamicresourcelifecycles.rs index 2256d8739..a409d04dc 100644 --- a/kube-custom-resources-rs/src/boskos_k8s_io/v1/dynamicresourcelifecycles.rs +++ b/kube-custom-resources-rs/src/boskos_k8s_io/v1/dynamicresourcelifecycles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/boskos/boskos.k8s.io/v1/dynamicresourcelifecycles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/boskos_k8s_io/v1/resources.rs b/kube-custom-resources-rs/src/boskos_k8s_io/v1/resources.rs index afa536f1b..fc5dbcf2d 100644 --- a/kube-custom-resources-rs/src/boskos_k8s_io/v1/resources.rs +++ b/kube-custom-resources-rs/src/boskos_k8s_io/v1/resources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/boskos/boskos.k8s.io/v1/resources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/bpfprograms.rs b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/bpfprograms.rs index b9a85b446..995cf38b5 100644 --- a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/bpfprograms.rs +++ b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/bpfprograms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bpfman/bpfman/bpfman.io/v1alpha1/bpfprograms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/fentryprograms.rs b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/fentryprograms.rs index 30c65562f..8f44f7168 100644 --- a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/fentryprograms.rs +++ b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/fentryprograms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bpfman/bpfman/bpfman.io/v1alpha1/fentryprograms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/fexitprograms.rs b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/fexitprograms.rs index 741635073..0a065dd98 100644 --- a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/fexitprograms.rs +++ b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/fexitprograms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bpfman/bpfman/bpfman.io/v1alpha1/fexitprograms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/kprobeprograms.rs b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/kprobeprograms.rs index e5f3224b9..2a4bf3edd 100644 --- a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/kprobeprograms.rs +++ b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/kprobeprograms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bpfman/bpfman/bpfman.io/v1alpha1/kprobeprograms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/tcprograms.rs b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/tcprograms.rs index 6a6a9e519..66288eecd 100644 --- a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/tcprograms.rs +++ b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/tcprograms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bpfman/bpfman/bpfman.io/v1alpha1/tcprograms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/tracepointprograms.rs b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/tracepointprograms.rs index 2719a040e..3b7bc02da 100644 --- a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/tracepointprograms.rs +++ b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/tracepointprograms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bpfman/bpfman/bpfman.io/v1alpha1/tracepointprograms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/uprobeprograms.rs b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/uprobeprograms.rs index a81a53682..74a8271e5 100644 --- a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/uprobeprograms.rs +++ b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/uprobeprograms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bpfman/bpfman/bpfman.io/v1alpha1/uprobeprograms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/xdpprograms.rs b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/xdpprograms.rs index 11bb0c0ac..720065ed2 100644 --- a/kube-custom-resources-rs/src/bpfman_io/v1alpha1/xdpprograms.rs +++ b/kube-custom-resources-rs/src/bpfman_io/v1alpha1/xdpprograms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bpfman/bpfman/bpfman.io/v1alpha1/xdpprograms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/bus_volcano_sh/v1alpha1/commands.rs b/kube-custom-resources-rs/src/bus_volcano_sh/v1alpha1/commands.rs index 752aaecb1..79d1844d8 100644 --- a/kube-custom-resources-rs/src/bus_volcano_sh/v1alpha1/commands.rs +++ b/kube-custom-resources-rs/src/bus_volcano_sh/v1alpha1/commands.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/volcano-sh/volcano/bus.volcano.sh/v1alpha1/commands.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cache_kubedl_io/v1alpha1/cachebackends.rs b/kube-custom-resources-rs/src/cache_kubedl_io/v1alpha1/cachebackends.rs index 8096125bf..45a2e994b 100644 --- a/kube-custom-resources-rs/src/cache_kubedl_io/v1alpha1/cachebackends.rs +++ b/kube-custom-resources-rs/src/cache_kubedl_io/v1alpha1/cachebackends.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/cache.kubedl.io/v1alpha1/cachebackends.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/caching_ibm_com/v1alpha1/varnishclusters.rs b/kube-custom-resources-rs/src/caching_ibm_com/v1alpha1/varnishclusters.rs index 265698b3a..883f02785 100644 --- a/kube-custom-resources-rs/src/caching_ibm_com/v1alpha1/varnishclusters.rs +++ b/kube-custom-resources-rs/src/caching_ibm_com/v1alpha1/varnishclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/IBM/varnish-operator/caching.ibm.com/v1alpha1/varnishclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/camel_apache_org/v1/builds.rs b/kube-custom-resources-rs/src/camel_apache_org/v1/builds.rs index 32a28aab7..409b96d6a 100644 --- a/kube-custom-resources-rs/src/camel_apache_org/v1/builds.rs +++ b/kube-custom-resources-rs/src/camel_apache_org/v1/builds.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/camel-k/camel.apache.org/v1/builds.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/camel_apache_org/v1/camelcatalogs.rs b/kube-custom-resources-rs/src/camel_apache_org/v1/camelcatalogs.rs index de3b44c3f..4531324c2 100644 --- a/kube-custom-resources-rs/src/camel_apache_org/v1/camelcatalogs.rs +++ b/kube-custom-resources-rs/src/camel_apache_org/v1/camelcatalogs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/camel-k/camel.apache.org/v1/camelcatalogs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/camel_apache_org/v1/kamelets.rs b/kube-custom-resources-rs/src/camel_apache_org/v1/kamelets.rs index a07cdaf47..e6990eba7 100644 --- a/kube-custom-resources-rs/src/camel_apache_org/v1/kamelets.rs +++ b/kube-custom-resources-rs/src/camel_apache_org/v1/kamelets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/camel-k/camel.apache.org/v1/kamelets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/camel_apache_org/v1alpha1/kamelets.rs b/kube-custom-resources-rs/src/camel_apache_org/v1alpha1/kamelets.rs index 1779c36da..e8ffbfb39 100644 --- a/kube-custom-resources-rs/src/camel_apache_org/v1alpha1/kamelets.rs +++ b/kube-custom-resources-rs/src/camel_apache_org/v1alpha1/kamelets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/camel-k/camel.apache.org/v1alpha1/kamelets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capabilities_3scale_net/v1alpha1/tenants.rs b/kube-custom-resources-rs/src/capabilities_3scale_net/v1alpha1/tenants.rs index 71680260d..41e20c997 100644 --- a/kube-custom-resources-rs/src/capabilities_3scale_net/v1alpha1/tenants.rs +++ b/kube-custom-resources-rs/src/capabilities_3scale_net/v1alpha1/tenants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/capabilities.3scale.net/v1alpha1/tenants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/activedocs.rs b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/activedocs.rs index 33ef03034..4230a6662 100644 --- a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/activedocs.rs +++ b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/activedocs.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/capabilities.3scale.net/v1beta1/activedocs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -49,7 +50,7 @@ pub struct ActiveDocSpec { pub struct ActiveDocActiveDocOpenApiRef { /// SecretRef refers to the secret object that contains the OpenAPI Document #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")] - pub secret_ref: Option, + pub secret_ref: Option, /// URL Remote URL from where to fetch the OpenAPI Document #[serde(default, skip_serializing_if = "Option::is_none")] pub url: Option, diff --git a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/applications.rs b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/applications.rs index ad858315b..a010f21d3 100644 --- a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/applications.rs +++ b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/applications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/capabilities.3scale.net/v1beta1/applications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/backends.rs b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/backends.rs index 445d9f467..8f85f3614 100644 --- a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/backends.rs +++ b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/backends.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/capabilities.3scale.net/v1beta1/backends.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/custompolicydefinitions.rs b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/custompolicydefinitions.rs index 28f8cafe8..23d657dcf 100644 --- a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/custompolicydefinitions.rs +++ b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/custompolicydefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/capabilities.3scale.net/v1beta1/custompolicydefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/developeraccounts.rs b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/developeraccounts.rs index 786542a66..562029d68 100644 --- a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/developeraccounts.rs +++ b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/developeraccounts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/capabilities.3scale.net/v1beta1/developeraccounts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/developerusers.rs b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/developerusers.rs index c5f943bcf..41fc727a4 100644 --- a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/developerusers.rs +++ b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/developerusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/capabilities.3scale.net/v1beta1/developerusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/openapis.rs b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/openapis.rs index a2114d90c..14f480534 100644 --- a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/openapis.rs +++ b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/openapis.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/capabilities.3scale.net/v1beta1/openapis.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -194,7 +195,7 @@ pub struct OpenAPIOidcSecurity { pub struct OpenAPIOpenapiRef { /// SecretRef refers to the secret object that contains the OpenAPI Document #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")] - pub secret_ref: Option, + pub secret_ref: Option, /// URL Remote URL from where to fetch the OpenAPI Document #[serde(default, skip_serializing_if = "Option::is_none")] pub url: Option, diff --git a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/products.rs b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/products.rs index 0860ec746..184a6ade5 100644 --- a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/products.rs +++ b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/products.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/capabilities.3scale.net/v1beta1/products.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/proxyconfigpromotes.rs b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/proxyconfigpromotes.rs index 692a69ebd..77104d505 100644 --- a/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/proxyconfigpromotes.rs +++ b/kube-custom-resources-rs/src/capabilities_3scale_net/v1beta1/proxyconfigpromotes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale/3scale-operator/capabilities.3scale.net/v1beta1/proxyconfigpromotes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capsule_clastix_io/v1alpha1/capsuleconfigurations.rs b/kube-custom-resources-rs/src/capsule_clastix_io/v1alpha1/capsuleconfigurations.rs index f306b3412..001e35485 100644 --- a/kube-custom-resources-rs/src/capsule_clastix_io/v1alpha1/capsuleconfigurations.rs +++ b/kube-custom-resources-rs/src/capsule_clastix_io/v1alpha1/capsuleconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clastix/capsule/capsule.clastix.io/v1alpha1/capsuleconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capsule_clastix_io/v1alpha1/tenants.rs b/kube-custom-resources-rs/src/capsule_clastix_io/v1alpha1/tenants.rs index 2bf537514..b64b17c06 100644 --- a/kube-custom-resources-rs/src/capsule_clastix_io/v1alpha1/tenants.rs +++ b/kube-custom-resources-rs/src/capsule_clastix_io/v1alpha1/tenants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clastix/capsule/capsule.clastix.io/v1alpha1/tenants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capsule_clastix_io/v1beta1/tenants.rs b/kube-custom-resources-rs/src/capsule_clastix_io/v1beta1/tenants.rs index 7a1b937a2..e5e51f78c 100644 --- a/kube-custom-resources-rs/src/capsule_clastix_io/v1beta1/tenants.rs +++ b/kube-custom-resources-rs/src/capsule_clastix_io/v1beta1/tenants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clastix/capsule/capsule.clastix.io/v1beta1/tenants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capsule_clastix_io/v1beta2/capsuleconfigurations.rs b/kube-custom-resources-rs/src/capsule_clastix_io/v1beta2/capsuleconfigurations.rs index 1c134b613..860c46cf7 100644 --- a/kube-custom-resources-rs/src/capsule_clastix_io/v1beta2/capsuleconfigurations.rs +++ b/kube-custom-resources-rs/src/capsule_clastix_io/v1beta2/capsuleconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clastix/capsule/capsule.clastix.io/v1beta2/capsuleconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/capsule_clastix_io/v1beta2/tenants.rs b/kube-custom-resources-rs/src/capsule_clastix_io/v1beta2/tenants.rs index d5c58f190..921c176d2 100644 --- a/kube-custom-resources-rs/src/capsule_clastix_io/v1beta2/tenants.rs +++ b/kube-custom-resources-rs/src/capsule_clastix_io/v1beta2/tenants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clastix/capsule/capsule.clastix.io/v1beta2/tenants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cassandra_datastax_com/v1beta1/cassandradatacenters.rs b/kube-custom-resources-rs/src/cassandra_datastax_com/v1beta1/cassandradatacenters.rs index 93967def2..75ab65b01 100644 --- a/kube-custom-resources-rs/src/cassandra_datastax_com/v1beta1/cassandradatacenters.rs +++ b/kube-custom-resources-rs/src/cassandra_datastax_com/v1beta1/cassandradatacenters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8ssandra/cass-operator/cassandra.datastax.com/v1beta1/cassandradatacenters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -9815,7 +9816,7 @@ pub struct CassandraDatacenterStatus { pub super_user_upserted: Option, /// TrackedTasks tracks the tasks for completion that were created by the cass-operator #[serde(default, skip_serializing_if = "Option::is_none", rename = "trackedTasks")] - pub tracked_tasks: Option>, + pub tracked_tasks: Option>, /// The timestamp at which managed cassandra users' credentials /// were last upserted to the management API #[serde(default, skip_serializing_if = "Option::is_none", rename = "usersUpserted")] @@ -9832,57 +9833,3 @@ pub struct CassandraDatacenterStatusNodeStatuses { pub rack: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct CassandraDatacenterStatusTrackedTasks { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephblockpoolradosnamespaces.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephblockpoolradosnamespaces.rs index 7a739dd4b..c8d2ea1a4 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephblockpoolradosnamespaces.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephblockpoolradosnamespaces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephblockpoolradosnamespaces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephblockpools.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephblockpools.rs index d08c32dad..af6492e72 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephblockpools.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephblockpools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephblockpools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephbucketnotifications.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephbucketnotifications.rs index 5709a8b7c..7b0160d54 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephbucketnotifications.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephbucketnotifications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephbucketnotifications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephbuckettopics.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephbuckettopics.rs index 1fcc41827..493065a9c 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephbuckettopics.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephbuckettopics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephbuckettopics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephclients.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephclients.rs index fa0d13fd3..732ddad1f 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephclients.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephclients.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephclients.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephcosidrivers.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephcosidrivers.rs index dd816ddc5..5ecc0e0aa 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephcosidrivers.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephcosidrivers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephcosidrivers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystemmirrors.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystemmirrors.rs index 8fbffd9ee..6fbb5ad72 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystemmirrors.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystemmirrors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephfilesystemmirrors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystems.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystems.rs index 311f37eae..27ef417ee 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystems.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystems.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephfilesystems.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystemsubvolumegroups.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystemsubvolumegroups.rs index 37fd13aa2..de3c24da2 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystemsubvolumegroups.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephfilesystemsubvolumegroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephfilesystemsubvolumegroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephnfses.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephnfses.rs index 7edb7bcd6..8c1ea49ad 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephnfses.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephnfses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephnfses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectrealms.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectrealms.rs index 7846cc25b..987a6ee09 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectrealms.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectrealms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectrealms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectstores.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectstores.rs index 3c6ae8dbc..762171532 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectstores.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectstores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectstores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -1554,16 +1554,61 @@ pub struct CephObjectStoreSecurityS3 { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CephObjectStoreSharedPools { /// The data pool used for creating RADOS namespaces in the object store - #[serde(rename = "dataPoolName")] - pub data_pool_name: String, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataPoolName")] + pub data_pool_name: Option, /// The metadata pool used for creating RADOS namespaces in the object store - #[serde(rename = "metadataPoolName")] - pub metadata_pool_name: String, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "metadataPoolName")] + pub metadata_pool_name: Option, + /// PoolPlacements control which Pools are associated with a particular RGW bucket. + /// Once PoolPlacements are defined, RGW client will be able to associate pool + /// with ObjectStore bucket by providing "" during s3 bucket creation + /// or "X-Storage-Policy" header during swift container creation. + /// See: https://docs.ceph.com/en/latest/radosgw/placement/#placement-targets + /// PoolPlacement with name: "default" will be used as a default pool if no option + /// is provided during bucket creation. + /// If default placement is not provided, spec.sharedPools.dataPoolName and spec.sharedPools.MetadataPoolName will be used as default pools. + /// If spec.sharedPools are also empty, then RGW pools (spec.dataPool and spec.metadataPool) will be used as defaults. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "poolPlacements")] + pub pool_placements: Option>, /// Whether the RADOS namespaces should be preserved on deletion of the object store #[serde(default, skip_serializing_if = "Option::is_none", rename = "preserveRadosNamespaceDataOnDelete")] pub preserve_rados_namespace_data_on_delete: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct CephObjectStoreSharedPoolsPoolPlacements { + /// The data pool used to store ObjectStore data that cannot use erasure coding (ex: multi-part uploads). + /// If dataPoolName is not erasure coded, then there is no need for dataNonECPoolName. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataNonECPoolName")] + pub data_non_ec_pool_name: Option, + /// The data pool used to store ObjectStore objects data. + #[serde(rename = "dataPoolName")] + pub data_pool_name: String, + /// The metadata pool used to store ObjectStore bucket index. + #[serde(rename = "metadataPoolName")] + pub metadata_pool_name: String, + /// Pool placement name. Name can be arbitrary. Placement with name "default" will be used as default. + pub name: String, + /// StorageClasses can be selected by user to override dataPoolName during object creation. + /// Each placement has default STANDARD StorageClass pointing to dataPoolName. + /// This list allows defining additional StorageClasses on top of default STANDARD storage class. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClasses")] + pub storage_classes: Option>, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct CephObjectStoreSharedPoolsPoolPlacementsStorageClasses { + /// DataPoolName is the data pool used to store ObjectStore objects data. + #[serde(rename = "dataPoolName")] + pub data_pool_name: String, + /// Name is the StorageClass name. Ceph allows arbitrary name for StorageClasses, + /// however most clients/libs insist on AWS names so it is recommended to use + /// one of the valid x-amz-storage-class values for better compatibility: + /// REDUCED_REDUNDANCY | STANDARD_IA | ONEZONE_IA | INTELLIGENT_TIERING | GLACIER | DEEP_ARCHIVE | OUTPOSTS | GLACIER_IR | SNOW | EXPRESS_ONEZONE + /// See AWS docs: https://aws.amazon.com/de/s3/storage-classes/ + pub name: String, +} + /// The multisite info #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CephObjectStoreZone { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectstoreusers.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectstoreusers.rs index 289a3166e..3b78adf28 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectstoreusers.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectstoreusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectstoreusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectzonegroups.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectzonegroups.rs index e63b8bd05..f93dc8551 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectzonegroups.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectzonegroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectzonegroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectzones.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectzones.rs index 89a5c1631..173b25020 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectzones.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephobjectzones.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephobjectzones.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -423,16 +423,61 @@ pub struct CephObjectZoneMetadataPoolStatusCheckMirror { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CephObjectZoneSharedPools { /// The data pool used for creating RADOS namespaces in the object store - #[serde(rename = "dataPoolName")] - pub data_pool_name: String, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataPoolName")] + pub data_pool_name: Option, /// The metadata pool used for creating RADOS namespaces in the object store - #[serde(rename = "metadataPoolName")] - pub metadata_pool_name: String, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "metadataPoolName")] + pub metadata_pool_name: Option, + /// PoolPlacements control which Pools are associated with a particular RGW bucket. + /// Once PoolPlacements are defined, RGW client will be able to associate pool + /// with ObjectStore bucket by providing "" during s3 bucket creation + /// or "X-Storage-Policy" header during swift container creation. + /// See: https://docs.ceph.com/en/latest/radosgw/placement/#placement-targets + /// PoolPlacement with name: "default" will be used as a default pool if no option + /// is provided during bucket creation. + /// If default placement is not provided, spec.sharedPools.dataPoolName and spec.sharedPools.MetadataPoolName will be used as default pools. + /// If spec.sharedPools are also empty, then RGW pools (spec.dataPool and spec.metadataPool) will be used as defaults. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "poolPlacements")] + pub pool_placements: Option>, /// Whether the RADOS namespaces should be preserved on deletion of the object store #[serde(default, skip_serializing_if = "Option::is_none", rename = "preserveRadosNamespaceDataOnDelete")] pub preserve_rados_namespace_data_on_delete: Option, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct CephObjectZoneSharedPoolsPoolPlacements { + /// The data pool used to store ObjectStore data that cannot use erasure coding (ex: multi-part uploads). + /// If dataPoolName is not erasure coded, then there is no need for dataNonECPoolName. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataNonECPoolName")] + pub data_non_ec_pool_name: Option, + /// The data pool used to store ObjectStore objects data. + #[serde(rename = "dataPoolName")] + pub data_pool_name: String, + /// The metadata pool used to store ObjectStore bucket index. + #[serde(rename = "metadataPoolName")] + pub metadata_pool_name: String, + /// Pool placement name. Name can be arbitrary. Placement with name "default" will be used as default. + pub name: String, + /// StorageClasses can be selected by user to override dataPoolName during object creation. + /// Each placement has default STANDARD StorageClass pointing to dataPoolName. + /// This list allows defining additional StorageClasses on top of default STANDARD storage class. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "storageClasses")] + pub storage_classes: Option>, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct CephObjectZoneSharedPoolsPoolPlacementsStorageClasses { + /// DataPoolName is the data pool used to store ObjectStore objects data. + #[serde(rename = "dataPoolName")] + pub data_pool_name: String, + /// Name is the StorageClass name. Ceph allows arbitrary name for StorageClasses, + /// however most clients/libs insist on AWS names so it is recommended to use + /// one of the valid x-amz-storage-class values for better compatibility: + /// REDUCED_REDUNDANCY | STANDARD_IA | ONEZONE_IA | INTELLIGENT_TIERING | GLACIER | DEEP_ARCHIVE | OUTPOSTS | GLACIER_IR | SNOW | EXPRESS_ONEZONE + /// See AWS docs: https://aws.amazon.com/de/s3/storage-classes/ + pub name: String, +} + /// Status represents the status of an object #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CephObjectZoneStatus { diff --git a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephrbdmirrors.rs b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephrbdmirrors.rs index c3e371445..7c7d3239d 100644 --- a/kube-custom-resources-rs/src/ceph_rook_io/v1/cephrbdmirrors.rs +++ b/kube-custom-resources-rs/src/ceph_rook_io/v1/cephrbdmirrors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/ceph.rook.io/v1/cephrbdmirrors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cert_manager_io/v1/certificaterequests.rs b/kube-custom-resources-rs/src/cert_manager_io/v1/certificaterequests.rs index 457bf0565..825e63b2e 100644 --- a/kube-custom-resources-rs/src/cert_manager_io/v1/certificaterequests.rs +++ b/kube-custom-resources-rs/src/cert_manager_io/v1/certificaterequests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cert-manager/cert-manager/cert-manager.io/v1/certificaterequests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cert_manager_io/v1/certificates.rs b/kube-custom-resources-rs/src/cert_manager_io/v1/certificates.rs index cfc497d1e..15e2b5d62 100644 --- a/kube-custom-resources-rs/src/cert_manager_io/v1/certificates.rs +++ b/kube-custom-resources-rs/src/cert_manager_io/v1/certificates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cert-manager/cert-manager/cert-manager.io/v1/certificates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cert_manager_io/v1/clusterissuers.rs b/kube-custom-resources-rs/src/cert_manager_io/v1/clusterissuers.rs index 22b0d9df6..789b8882c 100644 --- a/kube-custom-resources-rs/src/cert_manager_io/v1/clusterissuers.rs +++ b/kube-custom-resources-rs/src/cert_manager_io/v1/clusterissuers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cert-manager/cert-manager/cert-manager.io/v1/clusterissuers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cert_manager_io/v1/issuers.rs b/kube-custom-resources-rs/src/cert_manager_io/v1/issuers.rs index 85e1ae191..3f88b3bf1 100644 --- a/kube-custom-resources-rs/src/cert_manager_io/v1/issuers.rs +++ b/kube-custom-resources-rs/src/cert_manager_io/v1/issuers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cert-manager/cert-manager/cert-manager.io/v1/issuers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha1/configurations.rs b/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha1/configurations.rs index c42398a2a..2da5c1f8e 100644 --- a/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha1/configurations.rs +++ b/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha1/configurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/chainsaw/chainsaw.kyverno.io/v1alpha1/configurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha1/tests.rs b/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha1/tests.rs index 419910a61..5f93053de 100644 --- a/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha1/tests.rs +++ b/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha1/tests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/chainsaw/chainsaw.kyverno.io/v1alpha1/tests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha2/configurations.rs b/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha2/configurations.rs index 11cdb96db..2016f3a10 100644 --- a/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha2/configurations.rs +++ b/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha2/configurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/chainsaw/chainsaw.kyverno.io/v1alpha2/configurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha2/tests.rs b/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha2/tests.rs index a4cf02e6f..37ed8fc36 100644 --- a/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha2/tests.rs +++ b/kube-custom-resources-rs/src/chainsaw_kyverno_io/v1alpha2/tests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/chainsaw/chainsaw.kyverno.io/v1alpha2/tests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/awschaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/awschaos.rs index d7186a140..c45ad0230 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/awschaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/awschaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/awschaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/azurechaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/azurechaos.rs index c97c9f344..37501cfc3 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/azurechaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/azurechaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/azurechaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/blockchaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/blockchaos.rs index 1d7979258..68874425c 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/blockchaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/blockchaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/blockchaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/dnschaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/dnschaos.rs index a3a80c93e..35b2383c2 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/dnschaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/dnschaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/dnschaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/gcpchaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/gcpchaos.rs index e4523df1c..05d6eeca0 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/gcpchaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/gcpchaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/gcpchaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/httpchaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/httpchaos.rs index 7e82de71e..9b8e660c6 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/httpchaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/httpchaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/httpchaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/iochaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/iochaos.rs index c675c02f3..858675598 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/iochaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/iochaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/iochaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/jvmchaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/jvmchaos.rs index b9c3b0bdd..89396e13a 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/jvmchaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/jvmchaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/jvmchaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/kernelchaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/kernelchaos.rs index 98f3eb61c..eabc2d685 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/kernelchaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/kernelchaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/kernelchaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/networkchaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/networkchaos.rs index ffb80b99f..851baf3cb 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/networkchaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/networkchaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/networkchaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/physicalmachinechaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/physicalmachinechaos.rs index 3c7daad0d..4aec51189 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/physicalmachinechaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/physicalmachinechaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/physicalmachinechaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/physicalmachines.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/physicalmachines.rs index 14efc0704..40cb8c2b3 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/physicalmachines.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/physicalmachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/physicalmachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podchaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podchaos.rs index 90c1a3340..d4385e709 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podchaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podchaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/podchaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podhttpchaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podhttpchaos.rs index 572e3caf0..854346caf 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podhttpchaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podhttpchaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/podhttpchaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podiochaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podiochaos.rs index 1d81cb268..b9b7418aa 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podiochaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podiochaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/podiochaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podnetworkchaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podnetworkchaos.rs index e2d0aa2b3..214fb635e 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podnetworkchaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/podnetworkchaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/podnetworkchaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/remoteclusters.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/remoteclusters.rs index 8c8182d75..9ef713db1 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/remoteclusters.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/remoteclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/remoteclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/schedules.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/schedules.rs index d6fa27b74..1b2bd20ba 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/schedules.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/schedules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/schedules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -9597,35 +9598,8 @@ pub struct ScheduleWorkflowTemplatesTimeChaosSelectorExpressionSelectors { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ScheduleStatus { #[serde(default, skip_serializing_if = "Option::is_none")] - pub active: Option>, + pub active: Option>, #[serde(default, skip_serializing_if = "Option::is_none")] pub time: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ScheduleStatusActive { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/statuschecks.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/statuschecks.rs index ed4a2a4bb..a93fc900b 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/statuschecks.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/statuschecks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/statuschecks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/stresschaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/stresschaos.rs index 70ed5a67e..3fdb7f265 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/stresschaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/stresschaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/stresschaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/timechaos.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/timechaos.rs index a3f3ba8c3..7d99a8251 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/timechaos.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/timechaos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/timechaos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/workflownodes.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/workflownodes.rs index a621a9519..b8645171b 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/workflownodes.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/workflownodes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/workflownodes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/workflows.rs b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/workflows.rs index fedb7d0f8..a409e9fdf 100644 --- a/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/workflows.rs +++ b/kube-custom-resources-rs/src/chaos_mesh_org/v1alpha1/workflows.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaos-mesh/chaos-mesh/chaos-mesh.org/v1alpha1/workflows.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chaosblade_io/v1alpha1/chaosblades.rs b/kube-custom-resources-rs/src/chaosblade_io/v1alpha1/chaosblades.rs index eddb96a46..2909bd71e 100644 --- a/kube-custom-resources-rs/src/chaosblade_io/v1alpha1/chaosblades.rs +++ b/kube-custom-resources-rs/src/chaosblade_io/v1alpha1/chaosblades.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/chaosblade-io/chaosblade-operator/chaosblade.io/v1alpha1/chaosblades.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/charts_amd_com/v1alpha1/amdgpus.rs b/kube-custom-resources-rs/src/charts_amd_com/v1alpha1/amdgpus.rs index cc5da9dd7..2d16d3fdc 100644 --- a/kube-custom-resources-rs/src/charts_amd_com/v1alpha1/amdgpus.rs +++ b/kube-custom-resources-rs/src/charts_amd_com/v1alpha1/amdgpus.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ROCm/gpu-operator/charts.amd.com/v1alpha1/amdgpus.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/charts_flagsmith_com/v1alpha1/flagsmiths.rs b/kube-custom-resources-rs/src/charts_flagsmith_com/v1alpha1/flagsmiths.rs index 615926c56..84f1113ac 100644 --- a/kube-custom-resources-rs/src/charts_flagsmith_com/v1alpha1/flagsmiths.rs +++ b/kube-custom-resources-rs/src/charts_flagsmith_com/v1alpha1/flagsmiths.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Flagsmith/flagsmith-operator/charts.flagsmith.com/v1alpha1/flagsmiths.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/charts_helm_k8s_io/v1alpha1/snykmonitors.rs b/kube-custom-resources-rs/src/charts_helm_k8s_io/v1alpha1/snykmonitors.rs index 776238acc..c84173ea2 100644 --- a/kube-custom-resources-rs/src/charts_helm_k8s_io/v1alpha1/snykmonitors.rs +++ b/kube-custom-resources-rs/src/charts_helm_k8s_io/v1alpha1/snykmonitors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/snyk/kubernetes-monitor/charts.helm.k8s.io/v1alpha1/snykmonitors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/charts_opdev_io/v1alpha1/synapses.rs b/kube-custom-resources-rs/src/charts_opdev_io/v1alpha1/synapses.rs index bb1bdaa5f..7b7751848 100644 --- a/kube-custom-resources-rs/src/charts_opdev_io/v1alpha1/synapses.rs +++ b/kube-custom-resources-rs/src/charts_opdev_io/v1alpha1/synapses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/opdev/synapse-helm/charts.opdev.io/v1alpha1/synapses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/charts_operatorhub_io/v1alpha1/cockroachdbs.rs b/kube-custom-resources-rs/src/charts_operatorhub_io/v1alpha1/cockroachdbs.rs index 69749dacb..b3e556f0f 100644 --- a/kube-custom-resources-rs/src/charts_operatorhub_io/v1alpha1/cockroachdbs.rs +++ b/kube-custom-resources-rs/src/charts_operatorhub_io/v1alpha1/cockroachdbs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dmesser/cockroachdb-operator/charts.operatorhub.io/v1alpha1/cockroachdbs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/che_eclipse_org/v1alpha1/kubernetesimagepullers.rs b/kube-custom-resources-rs/src/che_eclipse_org/v1alpha1/kubernetesimagepullers.rs index 556d224f4..d0bd112c2 100644 --- a/kube-custom-resources-rs/src/che_eclipse_org/v1alpha1/kubernetesimagepullers.rs +++ b/kube-custom-resources-rs/src/che_eclipse_org/v1alpha1/kubernetesimagepullers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/che-incubator/kubernetes-image-puller-operator/che.eclipse.org/v1alpha1/kubernetesimagepullers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chisel_operator_io/v1/exitnodeprovisioners.rs b/kube-custom-resources-rs/src/chisel_operator_io/v1/exitnodeprovisioners.rs index 2a9efb142..cefa5d27a 100644 --- a/kube-custom-resources-rs/src/chisel_operator_io/v1/exitnodeprovisioners.rs +++ b/kube-custom-resources-rs/src/chisel_operator_io/v1/exitnodeprovisioners.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/FyraLabs/chisel-operator/chisel-operator.io/v1/exitnodeprovisioners.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chisel_operator_io/v1/exitnodes.rs b/kube-custom-resources-rs/src/chisel_operator_io/v1/exitnodes.rs index 3c86f63f8..7fa8f3e02 100644 --- a/kube-custom-resources-rs/src/chisel_operator_io/v1/exitnodes.rs +++ b/kube-custom-resources-rs/src/chisel_operator_io/v1/exitnodes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/FyraLabs/chisel-operator/chisel-operator.io/v1/exitnodes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/chisel_operator_io/v2/exitnodes.rs b/kube-custom-resources-rs/src/chisel_operator_io/v2/exitnodes.rs index f891f62f7..d789168db 100644 --- a/kube-custom-resources-rs/src/chisel_operator_io/v2/exitnodes.rs +++ b/kube-custom-resources-rs/src/chisel_operator_io/v2/exitnodes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/FyraLabs/chisel-operator/chisel-operator.io/v2/exitnodes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cilium_io/v2/ciliumclusterwidenetworkpolicies.rs b/kube-custom-resources-rs/src/cilium_io/v2/ciliumclusterwidenetworkpolicies.rs index ac62f3574..11277f6fb 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2/ciliumclusterwidenetworkpolicies.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2/ciliumclusterwidenetworkpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2/ciliumclusterwidenetworkpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -20,86 +20,193 @@ use self::prelude::*; #[kube(derive="Default")] #[kube(derive="PartialEq")] pub struct CiliumClusterwideNetworkPolicySpec { - /// Description is a free form string, it can be used by the creator of the rule to store human readable explanation of the purpose of this rule. Rules cannot be identified by comment. + /// Description is a free form string, it can be used by the creator of + /// the rule to store human readable explanation of the purpose of this + /// rule. Rules cannot be identified by comment. #[serde(default, skip_serializing_if = "Option::is_none")] pub description: Option, - /// Egress is a list of EgressRule which are enforced at egress. If omitted or empty, this rule does not apply at egress. + /// Egress is a list of EgressRule which are enforced at egress. + /// If omitted or empty, this rule does not apply at egress. #[serde(default, skip_serializing_if = "Option::is_none")] pub egress: Option>, - /// EgressDeny is a list of EgressDenyRule which are enforced at egress. Any rule inserted here will be denied regardless of the allowed egress rules in the 'egress' field. If omitted or empty, this rule does not apply at egress. + /// EgressDeny is a list of EgressDenyRule which are enforced at egress. + /// Any rule inserted here will be denied regardless of the allowed egress + /// rules in the 'egress' field. + /// If omitted or empty, this rule does not apply at egress. #[serde(default, skip_serializing_if = "Option::is_none", rename = "egressDeny")] pub egress_deny: Option>, - /// EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. - /// If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. - /// If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. - /// This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode. + /// EnableDefaultDeny determines whether this policy configures the + /// subject endpoint(s) to have a default deny mode. If enabled, + /// this causes all traffic not explicitly allowed by a network policy + /// to be dropped. + /// + /// If not specified, the default is true for each traffic direction + /// that has rules, and false otherwise. For example, if a policy + /// only has Ingress or IngressDeny rules, then the default for + /// ingress is true and egress is false. + /// + /// If multiple policies apply to an endpoint, that endpoint's default deny + /// will be enabled if any policy requests it. + /// + /// This is useful for creating broad-based network policies that will not + /// cause endpoints to enter default-deny mode. #[serde(default, skip_serializing_if = "Option::is_none", rename = "enableDefaultDeny")] pub enable_default_deny: Option, - /// EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. + /// EndpointSelector selects all endpoints which should be subject to + /// this rule. EndpointSelector and NodeSelector cannot be both empty and + /// are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endpointSelector")] pub endpoint_selector: Option, - /// Ingress is a list of IngressRule which are enforced at ingress. If omitted or empty, this rule does not apply at ingress. + /// Ingress is a list of IngressRule which are enforced at ingress. + /// If omitted or empty, this rule does not apply at ingress. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingress: Option>, - /// IngressDeny is a list of IngressDenyRule which are enforced at ingress. Any rule inserted here will be denied regardless of the allowed ingress rules in the 'ingress' field. If omitted or empty, this rule does not apply at ingress. + /// IngressDeny is a list of IngressDenyRule which are enforced at ingress. + /// Any rule inserted here will be denied regardless of the allowed ingress + /// rules in the 'ingress' field. + /// If omitted or empty, this rule does not apply at ingress. #[serde(default, skip_serializing_if = "Option::is_none", rename = "ingressDeny")] pub ingress_deny: Option>, - /// Labels is a list of optional strings which can be used to re-identify the rule or to store metadata. It is possible to lookup or delete strings based on labels. Labels are not required to be unique, multiple rules can have overlapping or identical labels. + /// Labels is a list of optional strings which can be used to + /// re-identify the rule or to store metadata. It is possible to lookup + /// or delete strings based on labels. Labels are not required to be + /// unique, multiple rules can have overlapping or identical labels. #[serde(default, skip_serializing_if = "Option::is_none")] pub labels: Option>, - /// NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies. + /// NodeSelector selects all nodes which should be subject to this rule. + /// EndpointSelector and NodeSelector cannot be both empty and are mutually + /// exclusive. Can only be used in CiliumClusterwideNetworkPolicies. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeSelector")] pub node_selector: Option, } -/// EgressRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. -/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule. +/// EgressRule contains all rule types which can be applied at egress, i.e. +/// network traffic that originates inside the endpoint and exits the endpoint +/// selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members of the structure are specified, then all members +/// must match in order for the rule to take effect. The exception to this +/// rule is the ToRequires member; the effects of any Requires field in any +/// rule will apply to all other rules as well. +/// +/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are +/// mutually exclusive. Only one of these members may be present within an +/// individual rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgress { /// Authentication is the required authentication type for the allowed traffic, if any. #[serde(default, skip_serializing_if = "Option::is_none")] pub authentication: Option, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to connect to. - /// Example: Any endpoint with the label "app=httpd" is allowed to initiate type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is allowed to connect to. + /// + /// Example: + /// Any endpoint with the label "app=httpd" is allowed to initiate + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 + /// ToCIDR is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections. Only connections destined for + /// outside of the cluster and not targeting the host will be subject + /// to CIDR rules. This will match on the destination IP address of + /// outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet + /// with no ExcludeCIDRs is equivalent. Overlaps are allowed between + /// ToCIDR and ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDR")] pub to_cidr: Option>, - /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. + /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections to in addition to connections + /// which are allowed via ToEndpoints, along with a list of subnets contained + /// within their corresponding IP block to which traffic should not be + /// allowed. This will match on the destination IP address of outgoing + /// connections. Adding a prefix into ToCIDR or into ToCIDRSet with no + /// ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and + /// ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDRSet")] pub to_cidr_set: Option>, - /// ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. - /// Example: Any endpoint with the label "role=frontend" can communicate with any endpoint carrying the label "role=backend". + /// ToEndpoints is a list of endpoints identified by an EndpointSelector to + /// which the endpoints subject to the rule are allowed to communicate. + /// + /// Example: + /// Any endpoint with the label "role=frontend" can communicate with any + /// endpoint carrying the label "role=backend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEndpoints")] pub to_endpoints: Option>, - /// ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`. + /// ToEntities is a list of special entities to which the endpoint subject + /// to the rule is allowed to initiate connections. Supported entities are + /// `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, + /// `health`,`unmanaged` and `all`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEntities")] pub to_entities: Option>, - /// ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result from DNS resolution of `ToFQDN.MatchName`s are added to the same EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and L7 rules within this EgressRule will also apply to these IPs. The DNS -> IP mapping is re-resolved periodically from within the cilium-agent, and the IPs in the DNS response are effected in the policy for selected pods as-is (i.e. the list of IPs is not modified in any way). Note: An explicit rule to allow for DNS traffic is needed for the pods, as ToFQDN counts as an egress rule and will enforce egress policy when PolicyEnforcment=default. Note: If the resolved IPs are IPs within the kubernetes cluster, the ToFQDN rule will not apply to that IP. Note: ToFQDN cannot occur in the same policy as other To* rules. + /// ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result + /// from DNS resolution of `ToFQDN.MatchName`s are added to the same + /// EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and + /// L7 rules within this EgressRule will also apply to these IPs. + /// The DNS -> IP mapping is re-resolved periodically from within the + /// cilium-agent, and the IPs in the DNS response are effected in the policy + /// for selected pods as-is (i.e. the list of IPs is not modified in any way). + /// Note: An explicit rule to allow for DNS traffic is needed for the pods, as + /// ToFQDN counts as an egress rule and will enforce egress policy when + /// PolicyEnforcment=default. + /// Note: If the resolved IPs are IPs within the kubernetes cluster, the + /// ToFQDN rule will not apply to that IP. + /// Note: ToFQDN cannot occur in the same policy as other To* rules. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toFQDNs")] pub to_fqd_ns: Option>, - /// ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// ToGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// toGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "toGroups")] pub to_groups: Option>, - /// ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate. + /// ToNodes is a list of nodes identified by an + /// EndpointSelector to which endpoints subject to the rule is allowed to communicate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toNodes")] pub to_nodes: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to connect to. - /// Example: Any endpoint with the label "role=frontend" is allowed to initiate connections to destination port 8080/tcp + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is allowed to + /// connect to. + /// + /// Example: + /// Any endpoint with the label "role=frontend" is allowed to initiate + /// connections to destination port 8080/tcp #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, - /// ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. - /// Example: Any Endpoint with the label "team=A" requires any endpoint to which it communicates to also carry the label "team=A". + /// ToRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be able to connect to other + /// endpoints. These additional constraints do no by itself grant access + /// privileges and must always be accompanied with at least one matching + /// ToEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires any endpoint to which it + /// communicates to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toRequires")] pub to_requires: Option>, - /// ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. - /// Example: Any endpoint with the label "app=backend-app" is allowed to initiate connections to all cidrs backing the "external-service" service + /// ToServices is a list of services to which the endpoint subject + /// to the rule is allowed to initiate connections. + /// Currently Cilium only supports toServices for K8s services without + /// selectors. + /// + /// Example: + /// Any endpoint with the label "app=backend-app" is allowed to + /// initiate connections to all cidrs backing the "external-service" service #[serde(default, skip_serializing_if = "Option::is_none", rename = "toServices")] pub to_services: Option>, } @@ -133,10 +240,25 @@ pub struct CiliumClusterwideNetworkPolicyEgressIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -148,16 +270,26 @@ pub enum CiliumClusterwideNetworkPolicyEgressIcmpsFieldsFamily { IPv6, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -168,24 +300,32 @@ pub struct CiliumClusterwideNetworkPolicyEgressToEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyEgressToEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressToEndpointsMatchExpressionsOperator { In, @@ -196,16 +336,33 @@ pub enum CiliumClusterwideNetworkPolicyEgressToEndpointsMatchExpressionsOperator #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToFqdNs { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -232,24 +389,32 @@ pub struct CiliumClusterwideNetworkPolicyEgressToNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyEgressToNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressToNodesMatchExpressionsOperator { In, @@ -258,81 +423,131 @@ pub enum CiliumClusterwideNetworkPolicyEgressToNodesMatchExpressionsOperator { DoesNotExist, } -/// PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met. +/// PortRule is a list of ports/protocol combinations with optional Layer 7 +/// rules which must be met. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPorts { - /// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. + /// listener specifies the name of a custom Envoy listener to which this traffic should be + /// redirected to. #[serde(default, skip_serializing_if = "Option::is_none")] pub listener: Option, - /// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. + /// OriginatingTLS is the TLS context for the connections originated by + /// the L7 proxy. For egress policy this specifies the client-side TLS + /// parameters for the upstream connection originating from the L7 proxy + /// to the remote destination. For ingress policy this specifies the + /// client-side TLS parameters for the connection from the L7 proxy to + /// the local endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "originatingTLS")] pub originating_tls: Option, /// Ports is a list of L4 port/protocol #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. + /// Rules is a list of additional port level rules which must be met in + /// order for the PortRule to allow the traffic. If omitted or empty, + /// no layer 7 rules are enforced. #[serde(default, skip_serializing_if = "Option::is_none")] pub rules: Option, - /// ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake. + /// ServerNames is a list of allowed TLS SNI values. If not empty, then + /// TLS must be present and one of the provided SNIs must be indicated in the + /// TLS handshake. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serverNames")] pub server_names: Option>, - /// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. + /// TerminatingTLS is the TLS context for the connection terminated by + /// the L7 proxy. For egress policy this specifies the server-side TLS + /// parameters to be applied on the connections originated from the local + /// endpoint and terminated by the L7 proxy. For ingress policy this specifies + /// the server-side TLS parameters to be applied on the connections + /// originated from a remote source and terminated by the L7 proxy. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminatingTLS")] pub terminating_tls: Option, } -/// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. +/// listener specifies the name of a custom Envoy listener to which this traffic should be +/// redirected to. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsListener { - /// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. + /// EnvoyConfig is a reference to the CEC or CCEC resource in which + /// the listener is defined. #[serde(rename = "envoyConfig")] pub envoy_config: CiliumClusterwideNetworkPolicyEgressToPortsListenerEnvoyConfig, /// Name is the name of the listener. pub name: String, - /// Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent. + /// Priority for this Listener that is used when multiple rules would apply different + /// listeners to a policy map entry. Behavior of this is implementation dependent. #[serde(default, skip_serializing_if = "Option::is_none")] pub priority: Option, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsListenerEnvoyConfig { - /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed. + /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or + /// CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, + /// respectively. The only case this is currently explicitly needed is when referring to a + /// CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener + /// from a cluster scoped policy is not allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in. + /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where + /// the listener is defined in. pub name: String, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressToPortsListenerEnvoyConfigKind { CiliumEnvoyConfig, CiliumClusterwideEnvoyConfig, } -/// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. +/// OriginatingTLS is the TLS context for the connections originated by +/// the L7 proxy. For egress policy this specifies the client-side TLS +/// parameters for the upstream connection originating from the L7 proxy +/// to the remote destination. For ingress policy this specifies the +/// client-side TLS parameters for the connection from the L7 proxy to +/// the local endpoint. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsOriginatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumClusterwideNetworkPolicyEgressToPortsOriginatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsOriginatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -343,11 +558,16 @@ pub struct CiliumClusterwideNetworkPolicyEgressToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -365,7 +585,9 @@ pub enum CiliumClusterwideNetworkPolicyEgressToPortsPortsProtocol { Any, } -/// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. +/// Rules is a list of additional port level rules which must be met in +/// order for the PortRule to allow the traffic. If omitted or empty, +/// no layer 7 rules are enforced. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsRules { /// DNS-specific rules. @@ -388,57 +610,105 @@ pub struct CiliumClusterwideNetworkPolicyEgressToPortsRules { /// PortRuleDNS is a list of allowed DNS lookups. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsRulesDns { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. -/// All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. +/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule does not have any +/// effect. +/// +/// All fields of this type are extended POSIX regex as defined by IEEE Std +/// 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) +/// matched against the path of an incoming request. Currently it can contain +/// characters disallowed from the conventional "path" part of a URL as defined +/// by RFC 3986. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsRulesHttp { - /// HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match. + /// HeaderMatches is a list of HTTP headers which must be + /// present and match against the given values. Mismatch field can be used + /// to specify what to do when there is no match. #[serde(default, skip_serializing_if = "Option::is_none", rename = "headerMatches")] pub header_matches: Option>, - /// Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present. + /// Headers is a list of HTTP headers which must be present in the + /// request. If omitted or empty, requests are allowed regardless of + /// headers present. #[serde(default, skip_serializing_if = "Option::is_none")] pub headers: Option>, - /// Host is an extended POSIX regex matched against the host header of a request. Examples: - /// - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\.bar\.com will only match the host foo.bar.com - /// If omitted or empty, the value of the host header is ignored. + /// Host is an extended POSIX regex matched against the host header of a + /// request. Examples: + /// + /// - foo.bar.com will match the host fooXbar.com or foo-bar.com + /// - foo\.bar\.com will only match the host foo.bar.com + /// + /// If omitted or empty, the value of the host header is ignored. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Method is an extended POSIX regex matched against the method of a request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... - /// If omitted or empty, all methods are allowed. + /// Method is an extended POSIX regex matched against the method of a + /// request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... + /// + /// If omitted or empty, all methods are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub method: Option, - /// Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. - /// If omitted or empty, all paths are all allowed. + /// Path is an extended POSIX regex matched against the path of a + /// request. Currently it can contain characters disallowed from the + /// conventional "path" part of a URL as defined by RFC 3986. + /// + /// If omitted or empty, all paths are all allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsRulesHttpHeaderMatches { - /// Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log. + /// Mismatch identifies what to do in case there is no match. The default is + /// to drop the request. Otherwise the overall rule is still considered as + /// matching, but the mismatches are logged in the access log. #[serde(default, skip_serializing_if = "Option::is_none")] pub mismatch: Option, /// Name identifies the header. pub name: String, - /// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. + /// Secret refers to a secret that contains the value to be matched against. + /// The secret must only contain one entry. If the referred secret does not + /// exist, and there is no "Value" specified, the match will fail. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, - /// Value matches the exact value of the header. Can be specified either alone or together with "Secret"; will be used as the header value if the secret can not be found in the latter case. + /// Value matches the exact value of the header. Can be specified either + /// alone or together with "Secret"; will be used as the header value if the + /// secret can not be found in the latter case. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressToPortsRulesHttpHeaderMatchesMismatch { #[serde(rename = "LOG")] @@ -451,47 +721,89 @@ pub enum CiliumClusterwideNetworkPolicyEgressToPortsRulesHttpHeaderMatchesMismat Replace, } -/// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. +/// Secret refers to a secret that contains the value to be matched against. +/// The secret must only contain one entry. If the referred secret does not +/// exist, and there is no "Value" specified, the match will fail. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsRulesHttpHeaderMatchesSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsRulesKafka { - /// APIKey is a case-insensitive string matched against the key of a request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys - /// If omitted or empty, and if Role is not specified, then all keys are allowed. + /// APIKey is a case-insensitive string matched against the key of a + /// request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al + /// Reference: https://kafka.apache.org/protocol#protocol_api_keys + /// + /// If omitted or empty, and if Role is not specified, then all keys are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiKey")] pub api_key: Option, - /// APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. - /// If omitted or empty, all versions are allowed. + /// APIVersion is the version matched against the api version of the + /// Kafka message. If set, it has to be a string representing a positive + /// integer. + /// + /// If omitted or empty, all versions are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] pub api_version: Option, - /// ClientID is the client identifier as provided in the request. - /// From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. - /// If omitted or empty, all client identifiers are allowed. + /// ClientID is the client identifier as provided in the request. + /// + /// From Kafka protocol documentation: + /// This is a user supplied identifier for the client application. The + /// user can use any identifier they like and it will be used when + /// logging errors, monitoring aggregates, etc. For example, one might + /// want to monitor not just the requests per second overall, but the + /// number coming from each client application (each of which could + /// reside on multiple servers). This id acts as a logical grouping + /// across all requests from a particular client. + /// + /// If omitted or empty, all client identifiers are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "clientID")] pub client_id: Option, - /// Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as "produce" or "consume". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. - /// The following values are supported: - "produce": Allow producing to the topics specified in the rule - "consume": Allow consuming from the topics specified in the rule - /// This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. - /// If omitted or empty, and if APIKey is not specified, then all keys are allowed. + /// Role is a case-insensitive string and describes a group of API keys + /// necessary to perform certain higher-level Kafka operations such as "produce" + /// or "consume". A Role automatically expands into all APIKeys required + /// to perform the specified higher-level operation. + /// + /// The following values are supported: + /// - "produce": Allow producing to the topics specified in the rule + /// - "consume": Allow consuming from the topics specified in the rule + /// + /// This field is incompatible with the APIKey field, i.e APIKey and Role + /// cannot both be specified in the same rule. + /// + /// If omitted or empty, and if APIKey is not specified, then all keys are + /// allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub role: Option, - /// Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. - /// This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. - /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. - /// If omitted or empty, all topics are allowed. + /// Topic is the topic name contained in the message. If a Kafka request + /// contains multiple topics, then all topics must be allowed or the + /// message will be rejected. + /// + /// This constraint is ignored if the matched request message type + /// doesn't contain any topic. Maximum size of Topic can be 249 + /// characters as per recent Kafka spec and allowed characters are + /// a-z, A-Z, 0-9, -, . and _. + /// + /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 + /// version the length was changed from 255 to 249. For compatibility + /// reasons we are using 255. + /// + /// If omitted or empty, all topics are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub topic: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressToPortsRulesKafkaRole { #[serde(rename = "produce")] @@ -500,28 +812,52 @@ pub enum CiliumClusterwideNetworkPolicyEgressToPortsRulesKafkaRole { Consume, } -/// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. +/// TerminatingTLS is the TLS context for the connection terminated by +/// the L7 proxy. For egress policy this specifies the server-side TLS +/// parameters to be applied on the connections originated from the local +/// endpoint and terminated by the L7 proxy. For ingress policy this specifies +/// the server-side TLS parameters to be applied on the connections +/// originated from a remote source and terminated by the L7 proxy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsTerminatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumClusterwideNetworkPolicyEgressToPortsTerminatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToPortsTerminatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -532,24 +868,32 @@ pub struct CiliumClusterwideNetworkPolicyEgressToRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyEgressToRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressToRequiresMatchExpressionsOperator { In, @@ -593,24 +937,32 @@ pub struct CiliumClusterwideNetworkPolicyEgressToServicesK8sServiceSelectorSelec /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressToServicesK8sServiceSelectorSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyEgressToServicesK8sServiceSelectorSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressToServicesK8sServiceSelectorSelectorMatchExpressionsOperator { In, @@ -619,48 +971,115 @@ pub enum CiliumClusterwideNetworkPolicyEgressToServicesK8sServiceSelectorSelecto DoesNotExist, } -/// EgressDenyRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. -/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule. +/// EgressDenyRule contains all rule types which can be applied at egress, i.e. +/// network traffic that originates inside the endpoint and exits the endpoint +/// selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members of the structure are specified, then all members +/// must match in order for the rule to take effect. The exception to this +/// rule is the ToRequires member; the effects of any Requires field in any +/// rule will apply to all other rules as well. +/// +/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are +/// mutually exclusive. Only one of these members may be present within an +/// individual rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressDeny { - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to connect to. - /// Example: Any endpoint with the label "app=httpd" is not allowed to initiate type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is not allowed to connect to. + /// + /// Example: + /// Any endpoint with the label "app=httpd" is not allowed to initiate + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 + /// ToCIDR is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections. Only connections destined for + /// outside of the cluster and not targeting the host will be subject + /// to CIDR rules. This will match on the destination IP address of + /// outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet + /// with no ExcludeCIDRs is equivalent. Overlaps are allowed between + /// ToCIDR and ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDR")] pub to_cidr: Option>, - /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. + /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections to in addition to connections + /// which are allowed via ToEndpoints, along with a list of subnets contained + /// within their corresponding IP block to which traffic should not be + /// allowed. This will match on the destination IP address of outgoing + /// connections. Adding a prefix into ToCIDR or into ToCIDRSet with no + /// ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and + /// ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDRSet")] pub to_cidr_set: Option>, - /// ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. - /// Example: Any endpoint with the label "role=frontend" can communicate with any endpoint carrying the label "role=backend". + /// ToEndpoints is a list of endpoints identified by an EndpointSelector to + /// which the endpoints subject to the rule are allowed to communicate. + /// + /// Example: + /// Any endpoint with the label "role=frontend" can communicate with any + /// endpoint carrying the label "role=backend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEndpoints")] pub to_endpoints: Option>, - /// ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`. + /// ToEntities is a list of special entities to which the endpoint subject + /// to the rule is allowed to initiate connections. Supported entities are + /// `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, + /// `health`,`unmanaged` and `all`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEntities")] pub to_entities: Option>, - /// ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// ToGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// toGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "toGroups")] pub to_groups: Option>, - /// ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate. + /// ToNodes is a list of nodes identified by an + /// EndpointSelector to which endpoints subject to the rule is allowed to communicate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toNodes")] pub to_nodes: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to connect to. - /// Example: Any endpoint with the label "role=frontend" is not allowed to initiate connections to destination port 8080/tcp + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is not allowed to connect + /// to. + /// + /// Example: + /// Any endpoint with the label "role=frontend" is not allowed to initiate + /// connections to destination port 8080/tcp #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, - /// ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. - /// Example: Any Endpoint with the label "team=A" requires any endpoint to which it communicates to also carry the label "team=A". + /// ToRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be able to connect to other + /// endpoints. These additional constraints do no by itself grant access + /// privileges and must always be accompanied with at least one matching + /// ToEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires any endpoint to which it + /// communicates to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toRequires")] pub to_requires: Option>, - /// ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. - /// Example: Any endpoint with the label "app=backend-app" is allowed to initiate connections to all cidrs backing the "external-service" service + /// ToServices is a list of services to which the endpoint subject + /// to the rule is allowed to initiate connections. + /// Currently Cilium only supports toServices for K8s services without + /// selectors. + /// + /// Example: + /// Any endpoint with the label "app=backend-app" is allowed to + /// initiate connections to all cidrs backing the "external-service" service #[serde(default, skip_serializing_if = "Option::is_none", rename = "toServices")] pub to_services: Option>, } @@ -676,10 +1095,25 @@ pub struct CiliumClusterwideNetworkPolicyEgressDenyIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressDenyIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -691,16 +1125,26 @@ pub enum CiliumClusterwideNetworkPolicyEgressDenyIcmpsFieldsFamily { IPv6, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressDenyToCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -711,24 +1155,32 @@ pub struct CiliumClusterwideNetworkPolicyEgressDenyToEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressDenyToEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyEgressDenyToEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressDenyToEndpointsMatchExpressionsOperator { In, @@ -737,7 +1189,8 @@ pub enum CiliumClusterwideNetworkPolicyEgressDenyToEndpointsMatchExpressionsOper DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressDenyToGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -764,24 +1217,32 @@ pub struct CiliumClusterwideNetworkPolicyEgressDenyToNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressDenyToNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyEgressDenyToNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressDenyToNodesMatchExpressionsOperator { In, @@ -790,7 +1251,9 @@ pub enum CiliumClusterwideNetworkPolicyEgressDenyToNodesMatchExpressionsOperator DoesNotExist, } -/// PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies. +/// PortDenyRule is a list of ports/protocol that should be used for deny +/// policies. This structure lacks the L7Rules since it's not supported in deny +/// policies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressDenyToPorts { /// Ports is a list of L4 port/protocol @@ -804,11 +1267,16 @@ pub struct CiliumClusterwideNetworkPolicyEgressDenyToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -832,24 +1300,32 @@ pub struct CiliumClusterwideNetworkPolicyEgressDenyToRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressDenyToRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyEgressDenyToRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressDenyToRequiresMatchExpressionsOperator { In, @@ -893,24 +1369,32 @@ pub struct CiliumClusterwideNetworkPolicyEgressDenyToServicesK8sServiceSelectorS /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressionsOperator { In, @@ -919,44 +1403,67 @@ pub enum CiliumClusterwideNetworkPolicyEgressDenyToServicesK8sServiceSelectorSel DoesNotExist, } -/// EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. -/// If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. -/// If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. -/// This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode. +/// EnableDefaultDeny determines whether this policy configures the +/// subject endpoint(s) to have a default deny mode. If enabled, +/// this causes all traffic not explicitly allowed by a network policy +/// to be dropped. +/// +/// If not specified, the default is true for each traffic direction +/// that has rules, and false otherwise. For example, if a policy +/// only has Ingress or IngressDeny rules, then the default for +/// ingress is true and egress is false. +/// +/// If multiple policies apply to an endpoint, that endpoint's default deny +/// will be enabled if any policy requests it. +/// +/// This is useful for creating broad-based network policies that will not +/// cause endpoints to enter default-deny mode. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEnableDefaultDeny { - /// Whether or not the endpoint should have a default-deny rule applied to egress traffic. + /// Whether or not the endpoint should have a default-deny rule applied + /// to egress traffic. #[serde(default, skip_serializing_if = "Option::is_none")] pub egress: Option, - /// Whether or not the endpoint should have a default-deny rule applied to ingress traffic. + /// Whether or not the endpoint should have a default-deny rule applied + /// to ingress traffic. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingress: Option, } -/// EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. +/// EndpointSelector selects all endpoints which should be subject to +/// this rule. EndpointSelector and NodeSelector cannot be both empty and +/// are mutually exclusive. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEndpointSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyEndpointSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyEndpointSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyEndpointSelectorMatchExpressionsOperator { In, @@ -965,47 +1472,109 @@ pub enum CiliumClusterwideNetworkPolicyEndpointSelectorMatchExpressionsOperator DoesNotExist, } -/// IngressRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. -/// - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule. +/// IngressRule contains all rule types which can be applied at ingress, +/// i.e. network traffic that originates outside of the endpoint and +/// is entering the endpoint selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members are set, all of them need to match in order for +/// the rule to take effect. The exception to this rule is FromRequires field; +/// the effects of any Requires field in any rule will apply to all other +/// rules as well. +/// +/// - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually +/// exclusive. Only one of these members may be present within an individual +/// rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngress { /// Authentication is the required authentication type for the allowed traffic, if any. #[serde(default, skip_serializing_if = "Option::is_none")] pub authentication: Option, - /// FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.3.9.1 + /// FromCIDR is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from. Only connections which + /// do *not* originate from the cluster or from the local host are subject + /// to CIDR rules. In order to allow in-cluster connectivity, use the + /// FromEndpoints field. This will match on the source IP address of + /// incoming connections. Adding a prefix into FromCIDR or into + /// FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are + /// allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.3.9.1 #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDR")] pub from_cidr: Option>, - /// FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. + /// FromCIDRSet is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from in addition to FromEndpoints, + /// along with a list of subnets contained within their corresponding IP block + /// from which traffic should not be allowed. + /// This will match on the source IP address of incoming connections. Adding + /// a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is + /// equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDRSet")] pub from_cidr_set: Option>, - /// FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. - /// Example: Any endpoint with the label "role=backend" can be consumed by any endpoint carrying the label "role=frontend". + /// FromEndpoints is a list of endpoints identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. + /// + /// Example: + /// Any endpoint with the label "role=backend" can be consumed by any + /// endpoint carrying the label "role=frontend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEndpoints")] pub from_endpoints: Option>, - /// FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host` + /// FromEntities is a list of special entities which the endpoint subject + /// to the rule is allowed to receive connections from. Supported entities are + /// `world`, `cluster` and `host` #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEntities")] pub from_entities: Option>, - /// FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// FromGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// FromGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromGroups")] pub from_groups: Option>, - /// FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. + /// FromNodes is a list of nodes identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromNodes")] pub from_nodes: Option>, - /// FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. - /// Example: Any Endpoint with the label "team=A" requires consuming endpoint to also carry the label "team=A". + /// FromRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be reachable. These + /// additional constraints do no by itself grant access privileges and + /// must always be accompanied with at least one matching FromEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires consuming endpoint + /// to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromRequires")] pub from_requires: Option>, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can only accept incoming type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can only accept incoming + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can only accept incoming connections on port 80/tcp. + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can only accept incoming + /// connections on port 80/tcp. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, } @@ -1028,16 +1597,26 @@ pub enum CiliumClusterwideNetworkPolicyIngressAuthenticationMode { TestAlwaysFail, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressFromCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -1048,24 +1627,32 @@ pub struct CiliumClusterwideNetworkPolicyIngressFromEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressFromEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyIngressFromEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyIngressFromEndpointsMatchExpressionsOperator { In, @@ -1074,7 +1661,8 @@ pub enum CiliumClusterwideNetworkPolicyIngressFromEndpointsMatchExpressionsOpera DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressFromGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -1101,24 +1689,32 @@ pub struct CiliumClusterwideNetworkPolicyIngressFromNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressFromNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyIngressFromNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyIngressFromNodesMatchExpressionsOperator { In, @@ -1133,24 +1729,32 @@ pub struct CiliumClusterwideNetworkPolicyIngressFromRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressFromRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyIngressFromRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyIngressFromRequiresMatchExpressionsOperator { In, @@ -1170,10 +1774,25 @@ pub struct CiliumClusterwideNetworkPolicyIngressIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -1185,81 +1804,131 @@ pub enum CiliumClusterwideNetworkPolicyIngressIcmpsFieldsFamily { IPv6, } -/// PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met. +/// PortRule is a list of ports/protocol combinations with optional Layer 7 +/// rules which must be met. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPorts { - /// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. + /// listener specifies the name of a custom Envoy listener to which this traffic should be + /// redirected to. #[serde(default, skip_serializing_if = "Option::is_none")] pub listener: Option, - /// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. + /// OriginatingTLS is the TLS context for the connections originated by + /// the L7 proxy. For egress policy this specifies the client-side TLS + /// parameters for the upstream connection originating from the L7 proxy + /// to the remote destination. For ingress policy this specifies the + /// client-side TLS parameters for the connection from the L7 proxy to + /// the local endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "originatingTLS")] pub originating_tls: Option, /// Ports is a list of L4 port/protocol #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. + /// Rules is a list of additional port level rules which must be met in + /// order for the PortRule to allow the traffic. If omitted or empty, + /// no layer 7 rules are enforced. #[serde(default, skip_serializing_if = "Option::is_none")] pub rules: Option, - /// ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake. + /// ServerNames is a list of allowed TLS SNI values. If not empty, then + /// TLS must be present and one of the provided SNIs must be indicated in the + /// TLS handshake. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serverNames")] pub server_names: Option>, - /// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. + /// TerminatingTLS is the TLS context for the connection terminated by + /// the L7 proxy. For egress policy this specifies the server-side TLS + /// parameters to be applied on the connections originated from the local + /// endpoint and terminated by the L7 proxy. For ingress policy this specifies + /// the server-side TLS parameters to be applied on the connections + /// originated from a remote source and terminated by the L7 proxy. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminatingTLS")] pub terminating_tls: Option, } -/// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. +/// listener specifies the name of a custom Envoy listener to which this traffic should be +/// redirected to. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsListener { - /// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. + /// EnvoyConfig is a reference to the CEC or CCEC resource in which + /// the listener is defined. #[serde(rename = "envoyConfig")] pub envoy_config: CiliumClusterwideNetworkPolicyIngressToPortsListenerEnvoyConfig, /// Name is the name of the listener. pub name: String, - /// Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent. + /// Priority for this Listener that is used when multiple rules would apply different + /// listeners to a policy map entry. Behavior of this is implementation dependent. #[serde(default, skip_serializing_if = "Option::is_none")] pub priority: Option, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsListenerEnvoyConfig { - /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed. + /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or + /// CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, + /// respectively. The only case this is currently explicitly needed is when referring to a + /// CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener + /// from a cluster scoped policy is not allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in. + /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where + /// the listener is defined in. pub name: String, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyIngressToPortsListenerEnvoyConfigKind { CiliumEnvoyConfig, CiliumClusterwideEnvoyConfig, } -/// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. +/// OriginatingTLS is the TLS context for the connections originated by +/// the L7 proxy. For egress policy this specifies the client-side TLS +/// parameters for the upstream connection originating from the L7 proxy +/// to the remote destination. For ingress policy this specifies the +/// client-side TLS parameters for the connection from the L7 proxy to +/// the local endpoint. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsOriginatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumClusterwideNetworkPolicyIngressToPortsOriginatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsOriginatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -1270,11 +1939,16 @@ pub struct CiliumClusterwideNetworkPolicyIngressToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -1292,7 +1966,9 @@ pub enum CiliumClusterwideNetworkPolicyIngressToPortsPortsProtocol { Any, } -/// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. +/// Rules is a list of additional port level rules which must be met in +/// order for the PortRule to allow the traffic. If omitted or empty, +/// no layer 7 rules are enforced. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsRules { /// DNS-specific rules. @@ -1315,57 +1991,105 @@ pub struct CiliumClusterwideNetworkPolicyIngressToPortsRules { /// PortRuleDNS is a list of allowed DNS lookups. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsRulesDns { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. -/// All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. +/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule does not have any +/// effect. +/// +/// All fields of this type are extended POSIX regex as defined by IEEE Std +/// 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) +/// matched against the path of an incoming request. Currently it can contain +/// characters disallowed from the conventional "path" part of a URL as defined +/// by RFC 3986. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsRulesHttp { - /// HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match. + /// HeaderMatches is a list of HTTP headers which must be + /// present and match against the given values. Mismatch field can be used + /// to specify what to do when there is no match. #[serde(default, skip_serializing_if = "Option::is_none", rename = "headerMatches")] pub header_matches: Option>, - /// Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present. + /// Headers is a list of HTTP headers which must be present in the + /// request. If omitted or empty, requests are allowed regardless of + /// headers present. #[serde(default, skip_serializing_if = "Option::is_none")] pub headers: Option>, - /// Host is an extended POSIX regex matched against the host header of a request. Examples: - /// - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\.bar\.com will only match the host foo.bar.com - /// If omitted or empty, the value of the host header is ignored. + /// Host is an extended POSIX regex matched against the host header of a + /// request. Examples: + /// + /// - foo.bar.com will match the host fooXbar.com or foo-bar.com + /// - foo\.bar\.com will only match the host foo.bar.com + /// + /// If omitted or empty, the value of the host header is ignored. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Method is an extended POSIX regex matched against the method of a request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... - /// If omitted or empty, all methods are allowed. + /// Method is an extended POSIX regex matched against the method of a + /// request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... + /// + /// If omitted or empty, all methods are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub method: Option, - /// Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. - /// If omitted or empty, all paths are all allowed. + /// Path is an extended POSIX regex matched against the path of a + /// request. Currently it can contain characters disallowed from the + /// conventional "path" part of a URL as defined by RFC 3986. + /// + /// If omitted or empty, all paths are all allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsRulesHttpHeaderMatches { - /// Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log. + /// Mismatch identifies what to do in case there is no match. The default is + /// to drop the request. Otherwise the overall rule is still considered as + /// matching, but the mismatches are logged in the access log. #[serde(default, skip_serializing_if = "Option::is_none")] pub mismatch: Option, /// Name identifies the header. pub name: String, - /// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. + /// Secret refers to a secret that contains the value to be matched against. + /// The secret must only contain one entry. If the referred secret does not + /// exist, and there is no "Value" specified, the match will fail. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, - /// Value matches the exact value of the header. Can be specified either alone or together with "Secret"; will be used as the header value if the secret can not be found in the latter case. + /// Value matches the exact value of the header. Can be specified either + /// alone or together with "Secret"; will be used as the header value if the + /// secret can not be found in the latter case. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyIngressToPortsRulesHttpHeaderMatchesMismatch { #[serde(rename = "LOG")] @@ -1378,47 +2102,89 @@ pub enum CiliumClusterwideNetworkPolicyIngressToPortsRulesHttpHeaderMatchesMisma Replace, } -/// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. +/// Secret refers to a secret that contains the value to be matched against. +/// The secret must only contain one entry. If the referred secret does not +/// exist, and there is no "Value" specified, the match will fail. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsRulesHttpHeaderMatchesSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsRulesKafka { - /// APIKey is a case-insensitive string matched against the key of a request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys - /// If omitted or empty, and if Role is not specified, then all keys are allowed. + /// APIKey is a case-insensitive string matched against the key of a + /// request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al + /// Reference: https://kafka.apache.org/protocol#protocol_api_keys + /// + /// If omitted or empty, and if Role is not specified, then all keys are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiKey")] pub api_key: Option, - /// APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. - /// If omitted or empty, all versions are allowed. + /// APIVersion is the version matched against the api version of the + /// Kafka message. If set, it has to be a string representing a positive + /// integer. + /// + /// If omitted or empty, all versions are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] pub api_version: Option, - /// ClientID is the client identifier as provided in the request. - /// From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. - /// If omitted or empty, all client identifiers are allowed. + /// ClientID is the client identifier as provided in the request. + /// + /// From Kafka protocol documentation: + /// This is a user supplied identifier for the client application. The + /// user can use any identifier they like and it will be used when + /// logging errors, monitoring aggregates, etc. For example, one might + /// want to monitor not just the requests per second overall, but the + /// number coming from each client application (each of which could + /// reside on multiple servers). This id acts as a logical grouping + /// across all requests from a particular client. + /// + /// If omitted or empty, all client identifiers are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "clientID")] pub client_id: Option, - /// Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as "produce" or "consume". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. - /// The following values are supported: - "produce": Allow producing to the topics specified in the rule - "consume": Allow consuming from the topics specified in the rule - /// This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. - /// If omitted or empty, and if APIKey is not specified, then all keys are allowed. + /// Role is a case-insensitive string and describes a group of API keys + /// necessary to perform certain higher-level Kafka operations such as "produce" + /// or "consume". A Role automatically expands into all APIKeys required + /// to perform the specified higher-level operation. + /// + /// The following values are supported: + /// - "produce": Allow producing to the topics specified in the rule + /// - "consume": Allow consuming from the topics specified in the rule + /// + /// This field is incompatible with the APIKey field, i.e APIKey and Role + /// cannot both be specified in the same rule. + /// + /// If omitted or empty, and if APIKey is not specified, then all keys are + /// allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub role: Option, - /// Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. - /// This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. - /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. - /// If omitted or empty, all topics are allowed. + /// Topic is the topic name contained in the message. If a Kafka request + /// contains multiple topics, then all topics must be allowed or the + /// message will be rejected. + /// + /// This constraint is ignored if the matched request message type + /// doesn't contain any topic. Maximum size of Topic can be 249 + /// characters as per recent Kafka spec and allowed characters are + /// a-z, A-Z, 0-9, -, . and _. + /// + /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 + /// version the length was changed from 255 to 249. For compatibility + /// reasons we are using 255. + /// + /// If omitted or empty, all topics are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub topic: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyIngressToPortsRulesKafkaRole { #[serde(rename = "produce")] @@ -1427,84 +2193,180 @@ pub enum CiliumClusterwideNetworkPolicyIngressToPortsRulesKafkaRole { Consume, } -/// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. +/// TerminatingTLS is the TLS context for the connection terminated by +/// the L7 proxy. For egress policy this specifies the server-side TLS +/// parameters to be applied on the connections originated from the local +/// endpoint and terminated by the L7 proxy. For ingress policy this specifies +/// the server-side TLS parameters to be applied on the connections +/// originated from a remote source and terminated by the L7 proxy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsTerminatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumClusterwideNetworkPolicyIngressToPortsTerminatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressToPortsTerminatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// IngressDenyRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. -/// - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule. +/// IngressDenyRule contains all rule types which can be applied at ingress, +/// i.e. network traffic that originates outside of the endpoint and +/// is entering the endpoint selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members are set, all of them need to match in order for +/// the rule to take effect. The exception to this rule is FromRequires field; +/// the effects of any Requires field in any rule will apply to all other +/// rules as well. +/// +/// - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually +/// exclusive. Only one of these members may be present within an individual +/// rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressDeny { - /// FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.3.9.1 + /// FromCIDR is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from. Only connections which + /// do *not* originate from the cluster or from the local host are subject + /// to CIDR rules. In order to allow in-cluster connectivity, use the + /// FromEndpoints field. This will match on the source IP address of + /// incoming connections. Adding a prefix into FromCIDR or into + /// FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are + /// allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.3.9.1 #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDR")] pub from_cidr: Option>, - /// FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. + /// FromCIDRSet is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from in addition to FromEndpoints, + /// along with a list of subnets contained within their corresponding IP block + /// from which traffic should not be allowed. + /// This will match on the source IP address of incoming connections. Adding + /// a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is + /// equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDRSet")] pub from_cidr_set: Option>, - /// FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. - /// Example: Any endpoint with the label "role=backend" can be consumed by any endpoint carrying the label "role=frontend". + /// FromEndpoints is a list of endpoints identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. + /// + /// Example: + /// Any endpoint with the label "role=backend" can be consumed by any + /// endpoint carrying the label "role=frontend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEndpoints")] pub from_endpoints: Option>, - /// FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host` + /// FromEntities is a list of special entities which the endpoint subject + /// to the rule is allowed to receive connections from. Supported entities are + /// `world`, `cluster` and `host` #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEntities")] pub from_entities: Option>, - /// FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// FromGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// FromGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromGroups")] pub from_groups: Option>, - /// FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. + /// FromNodes is a list of nodes identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromNodes")] pub from_nodes: Option>, - /// FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. - /// Example: Any Endpoint with the label "team=A" requires consuming endpoint to also carry the label "team=A". + /// FromRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be reachable. These + /// additional constraints do no by itself grant access privileges and + /// must always be accompanied with at least one matching FromEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires consuming endpoint + /// to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromRequires")] pub from_requires: Option>, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can not accept incoming type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is not allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can not accept incoming + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can not accept incoming connections on port 80/tcp. + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is not allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can not accept incoming + /// connections on port 80/tcp. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressDenyFromCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -1515,24 +2377,32 @@ pub struct CiliumClusterwideNetworkPolicyIngressDenyFromEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressDenyFromEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyIngressDenyFromEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyIngressDenyFromEndpointsMatchExpressionsOperator { In, @@ -1541,7 +2411,8 @@ pub enum CiliumClusterwideNetworkPolicyIngressDenyFromEndpointsMatchExpressionsO DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressDenyFromGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -1568,24 +2439,32 @@ pub struct CiliumClusterwideNetworkPolicyIngressDenyFromNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressDenyFromNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyIngressDenyFromNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyIngressDenyFromNodesMatchExpressionsOperator { In, @@ -1600,24 +2479,32 @@ pub struct CiliumClusterwideNetworkPolicyIngressDenyFromRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressDenyFromRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyIngressDenyFromRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyIngressDenyFromRequiresMatchExpressionsOperator { In, @@ -1637,10 +2524,25 @@ pub struct CiliumClusterwideNetworkPolicyIngressDenyIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressDenyIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -1652,7 +2554,9 @@ pub enum CiliumClusterwideNetworkPolicyIngressDenyIcmpsFieldsFamily { IPv6, } -/// PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies. +/// PortDenyRule is a list of ports/protocol that should be used for deny +/// policies. This structure lacks the L7Rules since it's not supported in deny +/// policies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyIngressDenyToPorts { /// Ports is a list of L4 port/protocol @@ -1666,11 +2570,16 @@ pub struct CiliumClusterwideNetworkPolicyIngressDenyToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -1699,30 +2608,40 @@ pub struct CiliumClusterwideNetworkPolicyLabels { pub value: Option, } -/// NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies. +/// NodeSelector selects all nodes which should be subject to this rule. +/// EndpointSelector and NodeSelector cannot be both empty and are mutually +/// exclusive. Can only be used in CiliumClusterwideNetworkPolicies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyNodeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicyNodeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicyNodeSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicyNodeSelectorMatchExpressionsOperator { In, @@ -1731,91 +2650,206 @@ pub enum CiliumClusterwideNetworkPolicyNodeSelectorMatchExpressionsOperator { DoesNotExist, } -/// Rule is a policy rule which must be applied to all endpoints which match the labels contained in the endpointSelector -/// Each rule is split into an ingress section which contains all rules applicable at ingress, and an egress section applicable at egress. For rule types such as `L4Rule` and `CIDR` which can be applied at both ingress and egress, both ingress and egress side have to either specifically allow the connection or one side has to be omitted. -/// Either ingress, egress, or both can be provided. If both ingress and egress are omitted, the rule has no effect. +/// Rule is a policy rule which must be applied to all endpoints which match the +/// labels contained in the endpointSelector +/// +/// Each rule is split into an ingress section which contains all rules +/// applicable at ingress, and an egress section applicable at egress. For rule +/// types such as `L4Rule` and `CIDR` which can be applied at both ingress and +/// egress, both ingress and egress side have to either specifically allow the +/// connection or one side has to be omitted. +/// +/// Either ingress, egress, or both can be provided. If both ingress and egress +/// are omitted, the rule has no effect. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicys { - /// Description is a free form string, it can be used by the creator of the rule to store human readable explanation of the purpose of this rule. Rules cannot be identified by comment. + /// Description is a free form string, it can be used by the creator of + /// the rule to store human readable explanation of the purpose of this + /// rule. Rules cannot be identified by comment. #[serde(default, skip_serializing_if = "Option::is_none")] pub description: Option, - /// Egress is a list of EgressRule which are enforced at egress. If omitted or empty, this rule does not apply at egress. + /// Egress is a list of EgressRule which are enforced at egress. + /// If omitted or empty, this rule does not apply at egress. #[serde(default, skip_serializing_if = "Option::is_none")] pub egress: Option>, - /// EgressDeny is a list of EgressDenyRule which are enforced at egress. Any rule inserted here will be denied regardless of the allowed egress rules in the 'egress' field. If omitted or empty, this rule does not apply at egress. + /// EgressDeny is a list of EgressDenyRule which are enforced at egress. + /// Any rule inserted here will be denied regardless of the allowed egress + /// rules in the 'egress' field. + /// If omitted or empty, this rule does not apply at egress. #[serde(default, skip_serializing_if = "Option::is_none", rename = "egressDeny")] pub egress_deny: Option>, - /// EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. - /// If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. - /// If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. - /// This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode. + /// EnableDefaultDeny determines whether this policy configures the + /// subject endpoint(s) to have a default deny mode. If enabled, + /// this causes all traffic not explicitly allowed by a network policy + /// to be dropped. + /// + /// If not specified, the default is true for each traffic direction + /// that has rules, and false otherwise. For example, if a policy + /// only has Ingress or IngressDeny rules, then the default for + /// ingress is true and egress is false. + /// + /// If multiple policies apply to an endpoint, that endpoint's default deny + /// will be enabled if any policy requests it. + /// + /// This is useful for creating broad-based network policies that will not + /// cause endpoints to enter default-deny mode. #[serde(default, skip_serializing_if = "Option::is_none", rename = "enableDefaultDeny")] pub enable_default_deny: Option, - /// EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. + /// EndpointSelector selects all endpoints which should be subject to + /// this rule. EndpointSelector and NodeSelector cannot be both empty and + /// are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endpointSelector")] pub endpoint_selector: Option, - /// Ingress is a list of IngressRule which are enforced at ingress. If omitted or empty, this rule does not apply at ingress. + /// Ingress is a list of IngressRule which are enforced at ingress. + /// If omitted or empty, this rule does not apply at ingress. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingress: Option>, - /// IngressDeny is a list of IngressDenyRule which are enforced at ingress. Any rule inserted here will be denied regardless of the allowed ingress rules in the 'ingress' field. If omitted or empty, this rule does not apply at ingress. + /// IngressDeny is a list of IngressDenyRule which are enforced at ingress. + /// Any rule inserted here will be denied regardless of the allowed ingress + /// rules in the 'ingress' field. + /// If omitted or empty, this rule does not apply at ingress. #[serde(default, skip_serializing_if = "Option::is_none", rename = "ingressDeny")] pub ingress_deny: Option>, - /// Labels is a list of optional strings which can be used to re-identify the rule or to store metadata. It is possible to lookup or delete strings based on labels. Labels are not required to be unique, multiple rules can have overlapping or identical labels. + /// Labels is a list of optional strings which can be used to + /// re-identify the rule or to store metadata. It is possible to lookup + /// or delete strings based on labels. Labels are not required to be + /// unique, multiple rules can have overlapping or identical labels. #[serde(default, skip_serializing_if = "Option::is_none")] pub labels: Option>, - /// NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies. + /// NodeSelector selects all nodes which should be subject to this rule. + /// EndpointSelector and NodeSelector cannot be both empty and are mutually + /// exclusive. Can only be used in CiliumClusterwideNetworkPolicies. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeSelector")] pub node_selector: Option, } -/// EgressRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. -/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule. +/// EgressRule contains all rule types which can be applied at egress, i.e. +/// network traffic that originates inside the endpoint and exits the endpoint +/// selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members of the structure are specified, then all members +/// must match in order for the rule to take effect. The exception to this +/// rule is the ToRequires member; the effects of any Requires field in any +/// rule will apply to all other rules as well. +/// +/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are +/// mutually exclusive. Only one of these members may be present within an +/// individual rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgress { /// Authentication is the required authentication type for the allowed traffic, if any. #[serde(default, skip_serializing_if = "Option::is_none")] pub authentication: Option, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to connect to. - /// Example: Any endpoint with the label "app=httpd" is allowed to initiate type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is allowed to connect to. + /// + /// Example: + /// Any endpoint with the label "app=httpd" is allowed to initiate + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 + /// ToCIDR is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections. Only connections destined for + /// outside of the cluster and not targeting the host will be subject + /// to CIDR rules. This will match on the destination IP address of + /// outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet + /// with no ExcludeCIDRs is equivalent. Overlaps are allowed between + /// ToCIDR and ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDR")] pub to_cidr: Option>, - /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. + /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections to in addition to connections + /// which are allowed via ToEndpoints, along with a list of subnets contained + /// within their corresponding IP block to which traffic should not be + /// allowed. This will match on the destination IP address of outgoing + /// connections. Adding a prefix into ToCIDR or into ToCIDRSet with no + /// ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and + /// ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDRSet")] pub to_cidr_set: Option>, - /// ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. - /// Example: Any endpoint with the label "role=frontend" can communicate with any endpoint carrying the label "role=backend". + /// ToEndpoints is a list of endpoints identified by an EndpointSelector to + /// which the endpoints subject to the rule are allowed to communicate. + /// + /// Example: + /// Any endpoint with the label "role=frontend" can communicate with any + /// endpoint carrying the label "role=backend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEndpoints")] pub to_endpoints: Option>, - /// ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`. + /// ToEntities is a list of special entities to which the endpoint subject + /// to the rule is allowed to initiate connections. Supported entities are + /// `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, + /// `health`,`unmanaged` and `all`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEntities")] pub to_entities: Option>, - /// ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result from DNS resolution of `ToFQDN.MatchName`s are added to the same EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and L7 rules within this EgressRule will also apply to these IPs. The DNS -> IP mapping is re-resolved periodically from within the cilium-agent, and the IPs in the DNS response are effected in the policy for selected pods as-is (i.e. the list of IPs is not modified in any way). Note: An explicit rule to allow for DNS traffic is needed for the pods, as ToFQDN counts as an egress rule and will enforce egress policy when PolicyEnforcment=default. Note: If the resolved IPs are IPs within the kubernetes cluster, the ToFQDN rule will not apply to that IP. Note: ToFQDN cannot occur in the same policy as other To* rules. + /// ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result + /// from DNS resolution of `ToFQDN.MatchName`s are added to the same + /// EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and + /// L7 rules within this EgressRule will also apply to these IPs. + /// The DNS -> IP mapping is re-resolved periodically from within the + /// cilium-agent, and the IPs in the DNS response are effected in the policy + /// for selected pods as-is (i.e. the list of IPs is not modified in any way). + /// Note: An explicit rule to allow for DNS traffic is needed for the pods, as + /// ToFQDN counts as an egress rule and will enforce egress policy when + /// PolicyEnforcment=default. + /// Note: If the resolved IPs are IPs within the kubernetes cluster, the + /// ToFQDN rule will not apply to that IP. + /// Note: ToFQDN cannot occur in the same policy as other To* rules. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toFQDNs")] pub to_fqd_ns: Option>, - /// ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// ToGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// toGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "toGroups")] pub to_groups: Option>, - /// ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate. + /// ToNodes is a list of nodes identified by an + /// EndpointSelector to which endpoints subject to the rule is allowed to communicate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toNodes")] pub to_nodes: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to connect to. - /// Example: Any endpoint with the label "role=frontend" is allowed to initiate connections to destination port 8080/tcp + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is allowed to + /// connect to. + /// + /// Example: + /// Any endpoint with the label "role=frontend" is allowed to initiate + /// connections to destination port 8080/tcp #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, - /// ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. - /// Example: Any Endpoint with the label "team=A" requires any endpoint to which it communicates to also carry the label "team=A". + /// ToRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be able to connect to other + /// endpoints. These additional constraints do no by itself grant access + /// privileges and must always be accompanied with at least one matching + /// ToEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires any endpoint to which it + /// communicates to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toRequires")] pub to_requires: Option>, - /// ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. - /// Example: Any endpoint with the label "app=backend-app" is allowed to initiate connections to all cidrs backing the "external-service" service + /// ToServices is a list of services to which the endpoint subject + /// to the rule is allowed to initiate connections. + /// Currently Cilium only supports toServices for K8s services without + /// selectors. + /// + /// Example: + /// Any endpoint with the label "app=backend-app" is allowed to + /// initiate connections to all cidrs backing the "external-service" service #[serde(default, skip_serializing_if = "Option::is_none", rename = "toServices")] pub to_services: Option>, } @@ -1849,10 +2883,25 @@ pub struct CiliumClusterwideNetworkPolicysEgressIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -1864,16 +2913,26 @@ pub enum CiliumClusterwideNetworkPolicysEgressIcmpsFieldsFamily { IPv6, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -1884,24 +2943,32 @@ pub struct CiliumClusterwideNetworkPolicysEgressToEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysEgressToEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressToEndpointsMatchExpressionsOperator { In, @@ -1912,16 +2979,33 @@ pub enum CiliumClusterwideNetworkPolicysEgressToEndpointsMatchExpressionsOperato #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToFqdNs { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -1948,24 +3032,32 @@ pub struct CiliumClusterwideNetworkPolicysEgressToNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysEgressToNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressToNodesMatchExpressionsOperator { In, @@ -1974,81 +3066,131 @@ pub enum CiliumClusterwideNetworkPolicysEgressToNodesMatchExpressionsOperator { DoesNotExist, } -/// PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met. +/// PortRule is a list of ports/protocol combinations with optional Layer 7 +/// rules which must be met. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPorts { - /// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. + /// listener specifies the name of a custom Envoy listener to which this traffic should be + /// redirected to. #[serde(default, skip_serializing_if = "Option::is_none")] pub listener: Option, - /// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. + /// OriginatingTLS is the TLS context for the connections originated by + /// the L7 proxy. For egress policy this specifies the client-side TLS + /// parameters for the upstream connection originating from the L7 proxy + /// to the remote destination. For ingress policy this specifies the + /// client-side TLS parameters for the connection from the L7 proxy to + /// the local endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "originatingTLS")] pub originating_tls: Option, /// Ports is a list of L4 port/protocol #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. + /// Rules is a list of additional port level rules which must be met in + /// order for the PortRule to allow the traffic. If omitted or empty, + /// no layer 7 rules are enforced. #[serde(default, skip_serializing_if = "Option::is_none")] pub rules: Option, - /// ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake. + /// ServerNames is a list of allowed TLS SNI values. If not empty, then + /// TLS must be present and one of the provided SNIs must be indicated in the + /// TLS handshake. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serverNames")] pub server_names: Option>, - /// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. + /// TerminatingTLS is the TLS context for the connection terminated by + /// the L7 proxy. For egress policy this specifies the server-side TLS + /// parameters to be applied on the connections originated from the local + /// endpoint and terminated by the L7 proxy. For ingress policy this specifies + /// the server-side TLS parameters to be applied on the connections + /// originated from a remote source and terminated by the L7 proxy. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminatingTLS")] pub terminating_tls: Option, } -/// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. +/// listener specifies the name of a custom Envoy listener to which this traffic should be +/// redirected to. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsListener { - /// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. + /// EnvoyConfig is a reference to the CEC or CCEC resource in which + /// the listener is defined. #[serde(rename = "envoyConfig")] pub envoy_config: CiliumClusterwideNetworkPolicysEgressToPortsListenerEnvoyConfig, /// Name is the name of the listener. pub name: String, - /// Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent. + /// Priority for this Listener that is used when multiple rules would apply different + /// listeners to a policy map entry. Behavior of this is implementation dependent. #[serde(default, skip_serializing_if = "Option::is_none")] pub priority: Option, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsListenerEnvoyConfig { - /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed. + /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or + /// CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, + /// respectively. The only case this is currently explicitly needed is when referring to a + /// CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener + /// from a cluster scoped policy is not allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in. + /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where + /// the listener is defined in. pub name: String, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressToPortsListenerEnvoyConfigKind { CiliumEnvoyConfig, CiliumClusterwideEnvoyConfig, } -/// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. +/// OriginatingTLS is the TLS context for the connections originated by +/// the L7 proxy. For egress policy this specifies the client-side TLS +/// parameters for the upstream connection originating from the L7 proxy +/// to the remote destination. For ingress policy this specifies the +/// client-side TLS parameters for the connection from the L7 proxy to +/// the local endpoint. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsOriginatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumClusterwideNetworkPolicysEgressToPortsOriginatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsOriginatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -2059,11 +3201,16 @@ pub struct CiliumClusterwideNetworkPolicysEgressToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -2081,7 +3228,9 @@ pub enum CiliumClusterwideNetworkPolicysEgressToPortsPortsProtocol { Any, } -/// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. +/// Rules is a list of additional port level rules which must be met in +/// order for the PortRule to allow the traffic. If omitted or empty, +/// no layer 7 rules are enforced. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsRules { /// DNS-specific rules. @@ -2104,57 +3253,105 @@ pub struct CiliumClusterwideNetworkPolicysEgressToPortsRules { /// PortRuleDNS is a list of allowed DNS lookups. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsRulesDns { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. -/// All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. +/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule does not have any +/// effect. +/// +/// All fields of this type are extended POSIX regex as defined by IEEE Std +/// 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) +/// matched against the path of an incoming request. Currently it can contain +/// characters disallowed from the conventional "path" part of a URL as defined +/// by RFC 3986. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsRulesHttp { - /// HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match. + /// HeaderMatches is a list of HTTP headers which must be + /// present and match against the given values. Mismatch field can be used + /// to specify what to do when there is no match. #[serde(default, skip_serializing_if = "Option::is_none", rename = "headerMatches")] pub header_matches: Option>, - /// Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present. + /// Headers is a list of HTTP headers which must be present in the + /// request. If omitted or empty, requests are allowed regardless of + /// headers present. #[serde(default, skip_serializing_if = "Option::is_none")] pub headers: Option>, - /// Host is an extended POSIX regex matched against the host header of a request. Examples: - /// - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\.bar\.com will only match the host foo.bar.com - /// If omitted or empty, the value of the host header is ignored. + /// Host is an extended POSIX regex matched against the host header of a + /// request. Examples: + /// + /// - foo.bar.com will match the host fooXbar.com or foo-bar.com + /// - foo\.bar\.com will only match the host foo.bar.com + /// + /// If omitted or empty, the value of the host header is ignored. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Method is an extended POSIX regex matched against the method of a request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... - /// If omitted or empty, all methods are allowed. + /// Method is an extended POSIX regex matched against the method of a + /// request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... + /// + /// If omitted or empty, all methods are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub method: Option, - /// Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. - /// If omitted or empty, all paths are all allowed. + /// Path is an extended POSIX regex matched against the path of a + /// request. Currently it can contain characters disallowed from the + /// conventional "path" part of a URL as defined by RFC 3986. + /// + /// If omitted or empty, all paths are all allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsRulesHttpHeaderMatches { - /// Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log. + /// Mismatch identifies what to do in case there is no match. The default is + /// to drop the request. Otherwise the overall rule is still considered as + /// matching, but the mismatches are logged in the access log. #[serde(default, skip_serializing_if = "Option::is_none")] pub mismatch: Option, /// Name identifies the header. pub name: String, - /// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. + /// Secret refers to a secret that contains the value to be matched against. + /// The secret must only contain one entry. If the referred secret does not + /// exist, and there is no "Value" specified, the match will fail. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, - /// Value matches the exact value of the header. Can be specified either alone or together with "Secret"; will be used as the header value if the secret can not be found in the latter case. + /// Value matches the exact value of the header. Can be specified either + /// alone or together with "Secret"; will be used as the header value if the + /// secret can not be found in the latter case. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressToPortsRulesHttpHeaderMatchesMismatch { #[serde(rename = "LOG")] @@ -2167,47 +3364,89 @@ pub enum CiliumClusterwideNetworkPolicysEgressToPortsRulesHttpHeaderMatchesMisma Replace, } -/// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. +/// Secret refers to a secret that contains the value to be matched against. +/// The secret must only contain one entry. If the referred secret does not +/// exist, and there is no "Value" specified, the match will fail. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsRulesHttpHeaderMatchesSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsRulesKafka { - /// APIKey is a case-insensitive string matched against the key of a request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys - /// If omitted or empty, and if Role is not specified, then all keys are allowed. + /// APIKey is a case-insensitive string matched against the key of a + /// request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al + /// Reference: https://kafka.apache.org/protocol#protocol_api_keys + /// + /// If omitted or empty, and if Role is not specified, then all keys are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiKey")] pub api_key: Option, - /// APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. - /// If omitted or empty, all versions are allowed. + /// APIVersion is the version matched against the api version of the + /// Kafka message. If set, it has to be a string representing a positive + /// integer. + /// + /// If omitted or empty, all versions are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] pub api_version: Option, - /// ClientID is the client identifier as provided in the request. - /// From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. - /// If omitted or empty, all client identifiers are allowed. + /// ClientID is the client identifier as provided in the request. + /// + /// From Kafka protocol documentation: + /// This is a user supplied identifier for the client application. The + /// user can use any identifier they like and it will be used when + /// logging errors, monitoring aggregates, etc. For example, one might + /// want to monitor not just the requests per second overall, but the + /// number coming from each client application (each of which could + /// reside on multiple servers). This id acts as a logical grouping + /// across all requests from a particular client. + /// + /// If omitted or empty, all client identifiers are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "clientID")] pub client_id: Option, - /// Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as "produce" or "consume". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. - /// The following values are supported: - "produce": Allow producing to the topics specified in the rule - "consume": Allow consuming from the topics specified in the rule - /// This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. - /// If omitted or empty, and if APIKey is not specified, then all keys are allowed. + /// Role is a case-insensitive string and describes a group of API keys + /// necessary to perform certain higher-level Kafka operations such as "produce" + /// or "consume". A Role automatically expands into all APIKeys required + /// to perform the specified higher-level operation. + /// + /// The following values are supported: + /// - "produce": Allow producing to the topics specified in the rule + /// - "consume": Allow consuming from the topics specified in the rule + /// + /// This field is incompatible with the APIKey field, i.e APIKey and Role + /// cannot both be specified in the same rule. + /// + /// If omitted or empty, and if APIKey is not specified, then all keys are + /// allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub role: Option, - /// Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. - /// This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. - /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. - /// If omitted or empty, all topics are allowed. + /// Topic is the topic name contained in the message. If a Kafka request + /// contains multiple topics, then all topics must be allowed or the + /// message will be rejected. + /// + /// This constraint is ignored if the matched request message type + /// doesn't contain any topic. Maximum size of Topic can be 249 + /// characters as per recent Kafka spec and allowed characters are + /// a-z, A-Z, 0-9, -, . and _. + /// + /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 + /// version the length was changed from 255 to 249. For compatibility + /// reasons we are using 255. + /// + /// If omitted or empty, all topics are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub topic: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressToPortsRulesKafkaRole { #[serde(rename = "produce")] @@ -2216,28 +3455,52 @@ pub enum CiliumClusterwideNetworkPolicysEgressToPortsRulesKafkaRole { Consume, } -/// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. +/// TerminatingTLS is the TLS context for the connection terminated by +/// the L7 proxy. For egress policy this specifies the server-side TLS +/// parameters to be applied on the connections originated from the local +/// endpoint and terminated by the L7 proxy. For ingress policy this specifies +/// the server-side TLS parameters to be applied on the connections +/// originated from a remote source and terminated by the L7 proxy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsTerminatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumClusterwideNetworkPolicysEgressToPortsTerminatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToPortsTerminatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -2248,24 +3511,32 @@ pub struct CiliumClusterwideNetworkPolicysEgressToRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysEgressToRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressToRequiresMatchExpressionsOperator { In, @@ -2309,24 +3580,32 @@ pub struct CiliumClusterwideNetworkPolicysEgressToServicesK8sServiceSelectorSele /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressToServicesK8sServiceSelectorSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysEgressToServicesK8sServiceSelectorSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressToServicesK8sServiceSelectorSelectorMatchExpressionsOperator { In, @@ -2335,48 +3614,115 @@ pub enum CiliumClusterwideNetworkPolicysEgressToServicesK8sServiceSelectorSelect DoesNotExist, } -/// EgressDenyRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. -/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule. +/// EgressDenyRule contains all rule types which can be applied at egress, i.e. +/// network traffic that originates inside the endpoint and exits the endpoint +/// selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members of the structure are specified, then all members +/// must match in order for the rule to take effect. The exception to this +/// rule is the ToRequires member; the effects of any Requires field in any +/// rule will apply to all other rules as well. +/// +/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are +/// mutually exclusive. Only one of these members may be present within an +/// individual rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressDeny { - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to connect to. - /// Example: Any endpoint with the label "app=httpd" is not allowed to initiate type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is not allowed to connect to. + /// + /// Example: + /// Any endpoint with the label "app=httpd" is not allowed to initiate + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 + /// ToCIDR is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections. Only connections destined for + /// outside of the cluster and not targeting the host will be subject + /// to CIDR rules. This will match on the destination IP address of + /// outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet + /// with no ExcludeCIDRs is equivalent. Overlaps are allowed between + /// ToCIDR and ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDR")] pub to_cidr: Option>, - /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. + /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections to in addition to connections + /// which are allowed via ToEndpoints, along with a list of subnets contained + /// within their corresponding IP block to which traffic should not be + /// allowed. This will match on the destination IP address of outgoing + /// connections. Adding a prefix into ToCIDR or into ToCIDRSet with no + /// ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and + /// ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDRSet")] pub to_cidr_set: Option>, - /// ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. - /// Example: Any endpoint with the label "role=frontend" can communicate with any endpoint carrying the label "role=backend". + /// ToEndpoints is a list of endpoints identified by an EndpointSelector to + /// which the endpoints subject to the rule are allowed to communicate. + /// + /// Example: + /// Any endpoint with the label "role=frontend" can communicate with any + /// endpoint carrying the label "role=backend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEndpoints")] pub to_endpoints: Option>, - /// ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`. + /// ToEntities is a list of special entities to which the endpoint subject + /// to the rule is allowed to initiate connections. Supported entities are + /// `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, + /// `health`,`unmanaged` and `all`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEntities")] pub to_entities: Option>, - /// ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// ToGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// toGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "toGroups")] pub to_groups: Option>, - /// ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate. + /// ToNodes is a list of nodes identified by an + /// EndpointSelector to which endpoints subject to the rule is allowed to communicate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toNodes")] pub to_nodes: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to connect to. - /// Example: Any endpoint with the label "role=frontend" is not allowed to initiate connections to destination port 8080/tcp + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is not allowed to connect + /// to. + /// + /// Example: + /// Any endpoint with the label "role=frontend" is not allowed to initiate + /// connections to destination port 8080/tcp #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, - /// ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. - /// Example: Any Endpoint with the label "team=A" requires any endpoint to which it communicates to also carry the label "team=A". + /// ToRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be able to connect to other + /// endpoints. These additional constraints do no by itself grant access + /// privileges and must always be accompanied with at least one matching + /// ToEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires any endpoint to which it + /// communicates to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toRequires")] pub to_requires: Option>, - /// ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. - /// Example: Any endpoint with the label "app=backend-app" is allowed to initiate connections to all cidrs backing the "external-service" service + /// ToServices is a list of services to which the endpoint subject + /// to the rule is allowed to initiate connections. + /// Currently Cilium only supports toServices for K8s services without + /// selectors. + /// + /// Example: + /// Any endpoint with the label "app=backend-app" is allowed to + /// initiate connections to all cidrs backing the "external-service" service #[serde(default, skip_serializing_if = "Option::is_none", rename = "toServices")] pub to_services: Option>, } @@ -2392,10 +3738,25 @@ pub struct CiliumClusterwideNetworkPolicysEgressDenyIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressDenyIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -2407,16 +3768,26 @@ pub enum CiliumClusterwideNetworkPolicysEgressDenyIcmpsFieldsFamily { IPv6, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressDenyToCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -2427,24 +3798,32 @@ pub struct CiliumClusterwideNetworkPolicysEgressDenyToEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressDenyToEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysEgressDenyToEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressDenyToEndpointsMatchExpressionsOperator { In, @@ -2453,7 +3832,8 @@ pub enum CiliumClusterwideNetworkPolicysEgressDenyToEndpointsMatchExpressionsOpe DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressDenyToGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -2480,24 +3860,32 @@ pub struct CiliumClusterwideNetworkPolicysEgressDenyToNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressDenyToNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysEgressDenyToNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressDenyToNodesMatchExpressionsOperator { In, @@ -2506,7 +3894,9 @@ pub enum CiliumClusterwideNetworkPolicysEgressDenyToNodesMatchExpressionsOperato DoesNotExist, } -/// PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies. +/// PortDenyRule is a list of ports/protocol that should be used for deny +/// policies. This structure lacks the L7Rules since it's not supported in deny +/// policies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressDenyToPorts { /// Ports is a list of L4 port/protocol @@ -2520,11 +3910,16 @@ pub struct CiliumClusterwideNetworkPolicysEgressDenyToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -2548,24 +3943,32 @@ pub struct CiliumClusterwideNetworkPolicysEgressDenyToRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressDenyToRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysEgressDenyToRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressDenyToRequiresMatchExpressionsOperator { In, @@ -2609,24 +4012,32 @@ pub struct CiliumClusterwideNetworkPolicysEgressDenyToServicesK8sServiceSelector /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressionsOperator { In, @@ -2635,44 +4046,67 @@ pub enum CiliumClusterwideNetworkPolicysEgressDenyToServicesK8sServiceSelectorSe DoesNotExist, } -/// EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. -/// If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. -/// If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. -/// This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode. +/// EnableDefaultDeny determines whether this policy configures the +/// subject endpoint(s) to have a default deny mode. If enabled, +/// this causes all traffic not explicitly allowed by a network policy +/// to be dropped. +/// +/// If not specified, the default is true for each traffic direction +/// that has rules, and false otherwise. For example, if a policy +/// only has Ingress or IngressDeny rules, then the default for +/// ingress is true and egress is false. +/// +/// If multiple policies apply to an endpoint, that endpoint's default deny +/// will be enabled if any policy requests it. +/// +/// This is useful for creating broad-based network policies that will not +/// cause endpoints to enter default-deny mode. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEnableDefaultDeny { - /// Whether or not the endpoint should have a default-deny rule applied to egress traffic. + /// Whether or not the endpoint should have a default-deny rule applied + /// to egress traffic. #[serde(default, skip_serializing_if = "Option::is_none")] pub egress: Option, - /// Whether or not the endpoint should have a default-deny rule applied to ingress traffic. + /// Whether or not the endpoint should have a default-deny rule applied + /// to ingress traffic. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingress: Option, } -/// EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. +/// EndpointSelector selects all endpoints which should be subject to +/// this rule. EndpointSelector and NodeSelector cannot be both empty and +/// are mutually exclusive. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEndpointSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysEndpointSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysEndpointSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysEndpointSelectorMatchExpressionsOperator { In, @@ -2681,47 +4115,109 @@ pub enum CiliumClusterwideNetworkPolicysEndpointSelectorMatchExpressionsOperator DoesNotExist, } -/// IngressRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. -/// - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule. +/// IngressRule contains all rule types which can be applied at ingress, +/// i.e. network traffic that originates outside of the endpoint and +/// is entering the endpoint selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members are set, all of them need to match in order for +/// the rule to take effect. The exception to this rule is FromRequires field; +/// the effects of any Requires field in any rule will apply to all other +/// rules as well. +/// +/// - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually +/// exclusive. Only one of these members may be present within an individual +/// rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngress { /// Authentication is the required authentication type for the allowed traffic, if any. #[serde(default, skip_serializing_if = "Option::is_none")] pub authentication: Option, - /// FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.3.9.1 + /// FromCIDR is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from. Only connections which + /// do *not* originate from the cluster or from the local host are subject + /// to CIDR rules. In order to allow in-cluster connectivity, use the + /// FromEndpoints field. This will match on the source IP address of + /// incoming connections. Adding a prefix into FromCIDR or into + /// FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are + /// allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.3.9.1 #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDR")] pub from_cidr: Option>, - /// FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. + /// FromCIDRSet is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from in addition to FromEndpoints, + /// along with a list of subnets contained within their corresponding IP block + /// from which traffic should not be allowed. + /// This will match on the source IP address of incoming connections. Adding + /// a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is + /// equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDRSet")] pub from_cidr_set: Option>, - /// FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. - /// Example: Any endpoint with the label "role=backend" can be consumed by any endpoint carrying the label "role=frontend". + /// FromEndpoints is a list of endpoints identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. + /// + /// Example: + /// Any endpoint with the label "role=backend" can be consumed by any + /// endpoint carrying the label "role=frontend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEndpoints")] pub from_endpoints: Option>, - /// FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host` + /// FromEntities is a list of special entities which the endpoint subject + /// to the rule is allowed to receive connections from. Supported entities are + /// `world`, `cluster` and `host` #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEntities")] pub from_entities: Option>, - /// FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// FromGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// FromGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromGroups")] pub from_groups: Option>, - /// FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. + /// FromNodes is a list of nodes identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromNodes")] pub from_nodes: Option>, - /// FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. - /// Example: Any Endpoint with the label "team=A" requires consuming endpoint to also carry the label "team=A". + /// FromRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be reachable. These + /// additional constraints do no by itself grant access privileges and + /// must always be accompanied with at least one matching FromEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires consuming endpoint + /// to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromRequires")] pub from_requires: Option>, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can only accept incoming type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can only accept incoming + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can only accept incoming connections on port 80/tcp. + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can only accept incoming + /// connections on port 80/tcp. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, } @@ -2744,16 +4240,26 @@ pub enum CiliumClusterwideNetworkPolicysIngressAuthenticationMode { TestAlwaysFail, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressFromCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -2764,24 +4270,32 @@ pub struct CiliumClusterwideNetworkPolicysIngressFromEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressFromEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysIngressFromEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysIngressFromEndpointsMatchExpressionsOperator { In, @@ -2790,7 +4304,8 @@ pub enum CiliumClusterwideNetworkPolicysIngressFromEndpointsMatchExpressionsOper DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressFromGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -2817,24 +4332,32 @@ pub struct CiliumClusterwideNetworkPolicysIngressFromNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressFromNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysIngressFromNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysIngressFromNodesMatchExpressionsOperator { In, @@ -2849,24 +4372,32 @@ pub struct CiliumClusterwideNetworkPolicysIngressFromRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressFromRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysIngressFromRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysIngressFromRequiresMatchExpressionsOperator { In, @@ -2886,10 +4417,25 @@ pub struct CiliumClusterwideNetworkPolicysIngressIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -2901,81 +4447,131 @@ pub enum CiliumClusterwideNetworkPolicysIngressIcmpsFieldsFamily { IPv6, } -/// PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met. +/// PortRule is a list of ports/protocol combinations with optional Layer 7 +/// rules which must be met. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPorts { - /// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. + /// listener specifies the name of a custom Envoy listener to which this traffic should be + /// redirected to. #[serde(default, skip_serializing_if = "Option::is_none")] pub listener: Option, - /// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. + /// OriginatingTLS is the TLS context for the connections originated by + /// the L7 proxy. For egress policy this specifies the client-side TLS + /// parameters for the upstream connection originating from the L7 proxy + /// to the remote destination. For ingress policy this specifies the + /// client-side TLS parameters for the connection from the L7 proxy to + /// the local endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "originatingTLS")] pub originating_tls: Option, /// Ports is a list of L4 port/protocol #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. + /// Rules is a list of additional port level rules which must be met in + /// order for the PortRule to allow the traffic. If omitted or empty, + /// no layer 7 rules are enforced. #[serde(default, skip_serializing_if = "Option::is_none")] pub rules: Option, - /// ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake. + /// ServerNames is a list of allowed TLS SNI values. If not empty, then + /// TLS must be present and one of the provided SNIs must be indicated in the + /// TLS handshake. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serverNames")] pub server_names: Option>, - /// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. + /// TerminatingTLS is the TLS context for the connection terminated by + /// the L7 proxy. For egress policy this specifies the server-side TLS + /// parameters to be applied on the connections originated from the local + /// endpoint and terminated by the L7 proxy. For ingress policy this specifies + /// the server-side TLS parameters to be applied on the connections + /// originated from a remote source and terminated by the L7 proxy. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminatingTLS")] pub terminating_tls: Option, } -/// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. +/// listener specifies the name of a custom Envoy listener to which this traffic should be +/// redirected to. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsListener { - /// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. + /// EnvoyConfig is a reference to the CEC or CCEC resource in which + /// the listener is defined. #[serde(rename = "envoyConfig")] pub envoy_config: CiliumClusterwideNetworkPolicysIngressToPortsListenerEnvoyConfig, /// Name is the name of the listener. pub name: String, - /// Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent. + /// Priority for this Listener that is used when multiple rules would apply different + /// listeners to a policy map entry. Behavior of this is implementation dependent. #[serde(default, skip_serializing_if = "Option::is_none")] pub priority: Option, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsListenerEnvoyConfig { - /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed. + /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or + /// CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, + /// respectively. The only case this is currently explicitly needed is when referring to a + /// CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener + /// from a cluster scoped policy is not allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in. + /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where + /// the listener is defined in. pub name: String, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysIngressToPortsListenerEnvoyConfigKind { CiliumEnvoyConfig, CiliumClusterwideEnvoyConfig, } -/// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. +/// OriginatingTLS is the TLS context for the connections originated by +/// the L7 proxy. For egress policy this specifies the client-side TLS +/// parameters for the upstream connection originating from the L7 proxy +/// to the remote destination. For ingress policy this specifies the +/// client-side TLS parameters for the connection from the L7 proxy to +/// the local endpoint. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsOriginatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumClusterwideNetworkPolicysIngressToPortsOriginatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsOriginatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -2986,11 +4582,16 @@ pub struct CiliumClusterwideNetworkPolicysIngressToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -3008,7 +4609,9 @@ pub enum CiliumClusterwideNetworkPolicysIngressToPortsPortsProtocol { Any, } -/// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. +/// Rules is a list of additional port level rules which must be met in +/// order for the PortRule to allow the traffic. If omitted or empty, +/// no layer 7 rules are enforced. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsRules { /// DNS-specific rules. @@ -3031,57 +4634,105 @@ pub struct CiliumClusterwideNetworkPolicysIngressToPortsRules { /// PortRuleDNS is a list of allowed DNS lookups. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsRulesDns { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. -/// All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. +/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule does not have any +/// effect. +/// +/// All fields of this type are extended POSIX regex as defined by IEEE Std +/// 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) +/// matched against the path of an incoming request. Currently it can contain +/// characters disallowed from the conventional "path" part of a URL as defined +/// by RFC 3986. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsRulesHttp { - /// HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match. + /// HeaderMatches is a list of HTTP headers which must be + /// present and match against the given values. Mismatch field can be used + /// to specify what to do when there is no match. #[serde(default, skip_serializing_if = "Option::is_none", rename = "headerMatches")] pub header_matches: Option>, - /// Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present. + /// Headers is a list of HTTP headers which must be present in the + /// request. If omitted or empty, requests are allowed regardless of + /// headers present. #[serde(default, skip_serializing_if = "Option::is_none")] pub headers: Option>, - /// Host is an extended POSIX regex matched against the host header of a request. Examples: - /// - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\.bar\.com will only match the host foo.bar.com - /// If omitted or empty, the value of the host header is ignored. + /// Host is an extended POSIX regex matched against the host header of a + /// request. Examples: + /// + /// - foo.bar.com will match the host fooXbar.com or foo-bar.com + /// - foo\.bar\.com will only match the host foo.bar.com + /// + /// If omitted or empty, the value of the host header is ignored. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Method is an extended POSIX regex matched against the method of a request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... - /// If omitted or empty, all methods are allowed. + /// Method is an extended POSIX regex matched against the method of a + /// request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... + /// + /// If omitted or empty, all methods are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub method: Option, - /// Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. - /// If omitted or empty, all paths are all allowed. + /// Path is an extended POSIX regex matched against the path of a + /// request. Currently it can contain characters disallowed from the + /// conventional "path" part of a URL as defined by RFC 3986. + /// + /// If omitted or empty, all paths are all allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsRulesHttpHeaderMatches { - /// Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log. + /// Mismatch identifies what to do in case there is no match. The default is + /// to drop the request. Otherwise the overall rule is still considered as + /// matching, but the mismatches are logged in the access log. #[serde(default, skip_serializing_if = "Option::is_none")] pub mismatch: Option, /// Name identifies the header. pub name: String, - /// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. + /// Secret refers to a secret that contains the value to be matched against. + /// The secret must only contain one entry. If the referred secret does not + /// exist, and there is no "Value" specified, the match will fail. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, - /// Value matches the exact value of the header. Can be specified either alone or together with "Secret"; will be used as the header value if the secret can not be found in the latter case. + /// Value matches the exact value of the header. Can be specified either + /// alone or together with "Secret"; will be used as the header value if the + /// secret can not be found in the latter case. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysIngressToPortsRulesHttpHeaderMatchesMismatch { #[serde(rename = "LOG")] @@ -3094,47 +4745,89 @@ pub enum CiliumClusterwideNetworkPolicysIngressToPortsRulesHttpHeaderMatchesMism Replace, } -/// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. +/// Secret refers to a secret that contains the value to be matched against. +/// The secret must only contain one entry. If the referred secret does not +/// exist, and there is no "Value" specified, the match will fail. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsRulesHttpHeaderMatchesSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsRulesKafka { - /// APIKey is a case-insensitive string matched against the key of a request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys - /// If omitted or empty, and if Role is not specified, then all keys are allowed. + /// APIKey is a case-insensitive string matched against the key of a + /// request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al + /// Reference: https://kafka.apache.org/protocol#protocol_api_keys + /// + /// If omitted or empty, and if Role is not specified, then all keys are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiKey")] pub api_key: Option, - /// APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. - /// If omitted or empty, all versions are allowed. + /// APIVersion is the version matched against the api version of the + /// Kafka message. If set, it has to be a string representing a positive + /// integer. + /// + /// If omitted or empty, all versions are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] pub api_version: Option, - /// ClientID is the client identifier as provided in the request. - /// From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. - /// If omitted or empty, all client identifiers are allowed. + /// ClientID is the client identifier as provided in the request. + /// + /// From Kafka protocol documentation: + /// This is a user supplied identifier for the client application. The + /// user can use any identifier they like and it will be used when + /// logging errors, monitoring aggregates, etc. For example, one might + /// want to monitor not just the requests per second overall, but the + /// number coming from each client application (each of which could + /// reside on multiple servers). This id acts as a logical grouping + /// across all requests from a particular client. + /// + /// If omitted or empty, all client identifiers are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "clientID")] pub client_id: Option, - /// Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as "produce" or "consume". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. - /// The following values are supported: - "produce": Allow producing to the topics specified in the rule - "consume": Allow consuming from the topics specified in the rule - /// This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. - /// If omitted or empty, and if APIKey is not specified, then all keys are allowed. + /// Role is a case-insensitive string and describes a group of API keys + /// necessary to perform certain higher-level Kafka operations such as "produce" + /// or "consume". A Role automatically expands into all APIKeys required + /// to perform the specified higher-level operation. + /// + /// The following values are supported: + /// - "produce": Allow producing to the topics specified in the rule + /// - "consume": Allow consuming from the topics specified in the rule + /// + /// This field is incompatible with the APIKey field, i.e APIKey and Role + /// cannot both be specified in the same rule. + /// + /// If omitted or empty, and if APIKey is not specified, then all keys are + /// allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub role: Option, - /// Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. - /// This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. - /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. - /// If omitted or empty, all topics are allowed. + /// Topic is the topic name contained in the message. If a Kafka request + /// contains multiple topics, then all topics must be allowed or the + /// message will be rejected. + /// + /// This constraint is ignored if the matched request message type + /// doesn't contain any topic. Maximum size of Topic can be 249 + /// characters as per recent Kafka spec and allowed characters are + /// a-z, A-Z, 0-9, -, . and _. + /// + /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 + /// version the length was changed from 255 to 249. For compatibility + /// reasons we are using 255. + /// + /// If omitted or empty, all topics are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub topic: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysIngressToPortsRulesKafkaRole { #[serde(rename = "produce")] @@ -3143,84 +4836,180 @@ pub enum CiliumClusterwideNetworkPolicysIngressToPortsRulesKafkaRole { Consume, } -/// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. +/// TerminatingTLS is the TLS context for the connection terminated by +/// the L7 proxy. For egress policy this specifies the server-side TLS +/// parameters to be applied on the connections originated from the local +/// endpoint and terminated by the L7 proxy. For ingress policy this specifies +/// the server-side TLS parameters to be applied on the connections +/// originated from a remote source and terminated by the L7 proxy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsTerminatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumClusterwideNetworkPolicysIngressToPortsTerminatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressToPortsTerminatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// IngressDenyRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. -/// - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule. +/// IngressDenyRule contains all rule types which can be applied at ingress, +/// i.e. network traffic that originates outside of the endpoint and +/// is entering the endpoint selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members are set, all of them need to match in order for +/// the rule to take effect. The exception to this rule is FromRequires field; +/// the effects of any Requires field in any rule will apply to all other +/// rules as well. +/// +/// - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually +/// exclusive. Only one of these members may be present within an individual +/// rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressDeny { - /// FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.3.9.1 + /// FromCIDR is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from. Only connections which + /// do *not* originate from the cluster or from the local host are subject + /// to CIDR rules. In order to allow in-cluster connectivity, use the + /// FromEndpoints field. This will match on the source IP address of + /// incoming connections. Adding a prefix into FromCIDR or into + /// FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are + /// allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.3.9.1 #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDR")] pub from_cidr: Option>, - /// FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. + /// FromCIDRSet is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from in addition to FromEndpoints, + /// along with a list of subnets contained within their corresponding IP block + /// from which traffic should not be allowed. + /// This will match on the source IP address of incoming connections. Adding + /// a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is + /// equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDRSet")] pub from_cidr_set: Option>, - /// FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. - /// Example: Any endpoint with the label "role=backend" can be consumed by any endpoint carrying the label "role=frontend". + /// FromEndpoints is a list of endpoints identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. + /// + /// Example: + /// Any endpoint with the label "role=backend" can be consumed by any + /// endpoint carrying the label "role=frontend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEndpoints")] pub from_endpoints: Option>, - /// FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host` + /// FromEntities is a list of special entities which the endpoint subject + /// to the rule is allowed to receive connections from. Supported entities are + /// `world`, `cluster` and `host` #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEntities")] pub from_entities: Option>, - /// FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// FromGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// FromGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromGroups")] pub from_groups: Option>, - /// FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. + /// FromNodes is a list of nodes identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromNodes")] pub from_nodes: Option>, - /// FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. - /// Example: Any Endpoint with the label "team=A" requires consuming endpoint to also carry the label "team=A". + /// FromRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be reachable. These + /// additional constraints do no by itself grant access privileges and + /// must always be accompanied with at least one matching FromEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires consuming endpoint + /// to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromRequires")] pub from_requires: Option>, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can not accept incoming type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is not allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can not accept incoming + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can not accept incoming connections on port 80/tcp. + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is not allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can not accept incoming + /// connections on port 80/tcp. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressDenyFromCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -3231,24 +5020,32 @@ pub struct CiliumClusterwideNetworkPolicysIngressDenyFromEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressDenyFromEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysIngressDenyFromEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysIngressDenyFromEndpointsMatchExpressionsOperator { In, @@ -3257,7 +5054,8 @@ pub enum CiliumClusterwideNetworkPolicysIngressDenyFromEndpointsMatchExpressions DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressDenyFromGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -3284,24 +5082,32 @@ pub struct CiliumClusterwideNetworkPolicysIngressDenyFromNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressDenyFromNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysIngressDenyFromNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysIngressDenyFromNodesMatchExpressionsOperator { In, @@ -3316,24 +5122,32 @@ pub struct CiliumClusterwideNetworkPolicysIngressDenyFromRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressDenyFromRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysIngressDenyFromRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysIngressDenyFromRequiresMatchExpressionsOperator { In, @@ -3353,10 +5167,25 @@ pub struct CiliumClusterwideNetworkPolicysIngressDenyIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressDenyIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -3368,7 +5197,9 @@ pub enum CiliumClusterwideNetworkPolicysIngressDenyIcmpsFieldsFamily { IPv6, } -/// PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies. +/// PortDenyRule is a list of ports/protocol that should be used for deny +/// policies. This structure lacks the L7Rules since it's not supported in deny +/// policies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysIngressDenyToPorts { /// Ports is a list of L4 port/protocol @@ -3382,11 +5213,16 @@ pub struct CiliumClusterwideNetworkPolicysIngressDenyToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -3415,30 +5251,40 @@ pub struct CiliumClusterwideNetworkPolicysLabels { pub value: Option, } -/// NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies. +/// NodeSelector selects all nodes which should be subject to this rule. +/// EndpointSelector and NodeSelector cannot be both empty and are mutually +/// exclusive. Can only be used in CiliumClusterwideNetworkPolicies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicysNodeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumClusterwideNetworkPolicysNodeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumClusterwideNetworkPolicysNodeSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumClusterwideNetworkPolicysNodeSelectorMatchExpressionsOperator { In, @@ -3447,36 +5293,51 @@ pub enum CiliumClusterwideNetworkPolicysNodeSelectorMatchExpressionsOperator { DoesNotExist, } -/// Status is the status of the Cilium policy rule. -/// The reason this field exists in this structure is due a bug in the k8s code-generator that doesn't create a `UpdateStatus` method because the field does not exist in the structure. +/// Status is the status of the Cilium policy rule. +/// +/// The reason this field exists in this structure is due a bug in the k8s +/// code-generator that doesn't create a `UpdateStatus` method because the +/// field does not exist in the structure. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyStatus { #[serde(default, skip_serializing_if = "Option::is_none")] pub conditions: Option>, - /// DerivativePolicies is the status of all policies derived from the Cilium policy + /// DerivativePolicies is the status of all policies derived from the Cilium + /// policy #[serde(default, skip_serializing_if = "Option::is_none", rename = "derivativePolicies")] pub derivative_policies: Option>, } -/// DerivativePolicies is the status of all policies derived from the Cilium policy +/// DerivativePolicies is the status of all policies derived from the Cilium +/// policy #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumClusterwideNetworkPolicyStatusDerivativePolicies { - /// Annotations corresponds to the Annotations in the ObjectMeta of the CNP that have been realized on the node for CNP. That is, if a CNP has been imported and has been assigned annotation X=Y by the user, Annotations in CiliumNetworkPolicyNodeStatus will be X=Y once the CNP that was imported corresponding to Annotation X=Y has been realized on the node. + /// Annotations corresponds to the Annotations in the ObjectMeta of the CNP + /// that have been realized on the node for CNP. That is, if a CNP has been + /// imported and has been assigned annotation X=Y by the user, + /// Annotations in CiliumNetworkPolicyNodeStatus will be X=Y once the + /// CNP that was imported corresponding to Annotation X=Y has been realized on + /// the node. #[serde(default, skip_serializing_if = "Option::is_none")] pub annotations: Option>, - /// Enforcing is set to true once all endpoints present at the time the policy has been imported are enforcing this policy. + /// Enforcing is set to true once all endpoints present at the time the + /// policy has been imported are enforcing this policy. #[serde(default, skip_serializing_if = "Option::is_none")] pub enforcing: Option, - /// Error describes any error that occurred when parsing or importing the policy, or realizing the policy for the endpoints to which it applies on the node. + /// Error describes any error that occurred when parsing or importing the + /// policy, or realizing the policy for the endpoints to which it applies + /// on the node. #[serde(default, skip_serializing_if = "Option::is_none")] pub error: Option, /// LastUpdated contains the last time this status was updated #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdated")] pub last_updated: Option, - /// Revision is the policy revision of the repository which first implemented this policy. + /// Revision is the policy revision of the repository which first implemented + /// this policy. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localPolicyRevision")] pub local_policy_revision: Option, - /// OK is true when the policy has been parsed and imported successfully into the in-memory policy repository on the node. + /// OK is true when the policy has been parsed and imported successfully + /// into the in-memory policy repository on the node. #[serde(default, skip_serializing_if = "Option::is_none")] pub ok: Option, } diff --git a/kube-custom-resources-rs/src/cilium_io/v2/ciliumegressgatewaypolicies.rs b/kube-custom-resources-rs/src/cilium_io/v2/ciliumegressgatewaypolicies.rs index 2a307d076..2e8de00c3 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2/ciliumegressgatewaypolicies.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2/ciliumegressgatewaypolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2/ciliumegressgatewaypolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -16,61 +16,98 @@ use self::prelude::*; #[kube(derive="Default")] #[kube(derive="PartialEq")] pub struct CiliumEgressGatewayPolicySpec { - /// DestinationCIDRs is a list of destination CIDRs for destination IP addresses. If a destination IP matches any one CIDR, it will be selected. + /// DestinationCIDRs is a list of destination CIDRs for destination IP addresses. + /// If a destination IP matches any one CIDR, it will be selected. #[serde(rename = "destinationCIDRs")] pub destination_cid_rs: Vec, /// EgressGateway is the gateway node responsible for SNATing traffic. #[serde(rename = "egressGateway")] pub egress_gateway: CiliumEgressGatewayPolicyEgressGateway, - /// ExcludedCIDRs is a list of destination CIDRs that will be excluded from the egress gateway redirection and SNAT logic. Should be a subset of destinationCIDRs otherwise it will not have any effect. + /// ExcludedCIDRs is a list of destination CIDRs that will be excluded + /// from the egress gateway redirection and SNAT logic. + /// Should be a subset of destinationCIDRs otherwise it will not have any + /// effect. #[serde(default, skip_serializing_if = "Option::is_none", rename = "excludedCIDRs")] pub excluded_cid_rs: Option>, - /// Egress represents a list of rules by which egress traffic is filtered from the source pods. + /// Egress represents a list of rules by which egress traffic is + /// filtered from the source pods. pub selectors: Vec, } /// EgressGateway is the gateway node responsible for SNATing traffic. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEgressGatewayPolicyEgressGateway { - /// EgressIP is the source IP address that the egress traffic is SNATed with. - /// Example: When set to "192.168.1.100", matching egress traffic will be redirected to the node matching the NodeSelector field and SNATed with IP address 192.168.1.100. - /// When none of the Interface or EgressIP fields is specified, the policy will use the first IPv4 assigned to the interface with the default route. + /// EgressIP is the source IP address that the egress traffic is SNATed + /// with. + /// + /// Example: + /// When set to "192.168.1.100", matching egress traffic will be + /// redirected to the node matching the NodeSelector field and SNATed + /// with IP address 192.168.1.100. + /// + /// When none of the Interface or EgressIP fields is specified, the + /// policy will use the first IPv4 assigned to the interface with the + /// default route. #[serde(default, skip_serializing_if = "Option::is_none", rename = "egressIP")] pub egress_ip: Option, - /// Interface is the network interface to which the egress IP address that the traffic is SNATed with is assigned. - /// Example: When set to "eth1", matching egress traffic will be redirected to the node matching the NodeSelector field and SNATed with the first IPv4 address assigned to the eth1 interface. - /// When none of the Interface or EgressIP fields is specified, the policy will use the first IPv4 assigned to the interface with the default route. + /// Interface is the network interface to which the egress IP address + /// that the traffic is SNATed with is assigned. + /// + /// Example: + /// When set to "eth1", matching egress traffic will be redirected to the + /// node matching the NodeSelector field and SNATed with the first IPv4 + /// address assigned to the eth1 interface. + /// + /// When none of the Interface or EgressIP fields is specified, the + /// policy will use the first IPv4 assigned to the interface with the + /// default route. #[serde(default, skip_serializing_if = "Option::is_none")] pub interface: Option, - /// This is a label selector which selects the node that should act as egress gateway for the given policy. In case multiple nodes are selected, only the first one in the lexical ordering over the node names will be used. This field follows standard label selector semantics. + /// This is a label selector which selects the node that should act as + /// egress gateway for the given policy. + /// In case multiple nodes are selected, only the first one in the + /// lexical ordering over the node names will be used. + /// This field follows standard label selector semantics. #[serde(rename = "nodeSelector")] pub node_selector: CiliumEgressGatewayPolicyEgressGatewayNodeSelector, } -/// This is a label selector which selects the node that should act as egress gateway for the given policy. In case multiple nodes are selected, only the first one in the lexical ordering over the node names will be used. This field follows standard label selector semantics. +/// This is a label selector which selects the node that should act as +/// egress gateway for the given policy. +/// In case multiple nodes are selected, only the first one in the +/// lexical ordering over the node names will be used. +/// This field follows standard label selector semantics. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEgressGatewayPolicyEgressGatewayNodeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumEgressGatewayPolicyEgressGatewayNodeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumEgressGatewayPolicyEgressGatewayNodeSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumEgressGatewayPolicyEgressGatewayNodeSelectorMatchExpressionsOperator { In, @@ -81,38 +118,49 @@ pub enum CiliumEgressGatewayPolicyEgressGatewayNodeSelectorMatchExpressionsOpera #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEgressGatewayPolicySelectors { - /// Selects Namespaces using cluster-scoped labels. This field follows standard label selector semantics; if present but empty, it selects all namespaces. + /// Selects Namespaces using cluster-scoped labels. This field follows standard label + /// selector semantics; if present but empty, it selects all namespaces. #[serde(default, skip_serializing_if = "Option::is_none", rename = "namespaceSelector")] pub namespace_selector: Option, - /// This is a label selector which selects Pods. This field follows standard label selector semantics; if present but empty, it selects all pods. + /// This is a label selector which selects Pods. This field follows standard label + /// selector semantics; if present but empty, it selects all pods. #[serde(default, skip_serializing_if = "Option::is_none", rename = "podSelector")] pub pod_selector: Option, } -/// Selects Namespaces using cluster-scoped labels. This field follows standard label selector semantics; if present but empty, it selects all namespaces. +/// Selects Namespaces using cluster-scoped labels. This field follows standard label +/// selector semantics; if present but empty, it selects all namespaces. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEgressGatewayPolicySelectorsNamespaceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumEgressGatewayPolicySelectorsNamespaceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumEgressGatewayPolicySelectorsNamespaceSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumEgressGatewayPolicySelectorsNamespaceSelectorMatchExpressionsOperator { In, @@ -121,30 +169,39 @@ pub enum CiliumEgressGatewayPolicySelectorsNamespaceSelectorMatchExpressionsOper DoesNotExist, } -/// This is a label selector which selects Pods. This field follows standard label selector semantics; if present but empty, it selects all pods. +/// This is a label selector which selects Pods. This field follows standard label +/// selector semantics; if present but empty, it selects all pods. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEgressGatewayPolicySelectorsPodSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumEgressGatewayPolicySelectorsPodSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumEgressGatewayPolicySelectorsPodSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumEgressGatewayPolicySelectorsPodSelectorMatchExpressionsOperator { In, diff --git a/kube-custom-resources-rs/src/cilium_io/v2/ciliumendpoints.rs b/kube-custom-resources-rs/src/cilium_io/v2/ciliumendpoints.rs index 3b2bca0ab..3b660ee36 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2/ciliumendpoints.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2/ciliumendpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2/ciliumendpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -19,7 +19,8 @@ pub struct CiliumEndpointStatus { /// Encryption is the encryption configuration of the node #[serde(default, skip_serializing_if = "Option::is_none")] pub encryption: Option, - /// ExternalIdentifiers is a set of identifiers to identify the endpoint apart from the pod name. This includes container runtime IDs. + /// ExternalIdentifiers is a set of identifiers to identify the endpoint + /// apart from the pod name. This includes container runtime IDs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "external-identifiers")] pub external_identifiers: Option, /// Health is the overall endpoint & subcomponent health. @@ -34,14 +35,17 @@ pub struct CiliumEndpointStatus { /// Log is the list of the last few warning and error log entries #[serde(default, skip_serializing_if = "Option::is_none")] pub log: Option>, - /// NamedPorts List of named Layer 4 port and protocol pairs which will be used in Network Policy specs. - /// swagger:model NamedPorts + /// NamedPorts List of named Layer 4 port and protocol pairs which will be used in Network + /// Policy specs. + /// + /// swagger:model NamedPorts #[serde(default, skip_serializing_if = "Option::is_none", rename = "named-ports")] pub named_ports: Option>, /// Networking is the networking properties of the endpoint. #[serde(default, skip_serializing_if = "Option::is_none")] pub networking: Option, - /// EndpointPolicy represents the endpoint's policy by listing all allowed ingress and egress identities in combination with L4 port and protocol. + /// EndpointPolicy represents the endpoint's policy by listing all allowed + /// ingress and egress identities in combination with L4 port and protocol. #[serde(default, skip_serializing_if = "Option::is_none")] pub policy: Option, /// State is the state of the endpoint. @@ -74,10 +78,12 @@ pub struct CiliumEndpointStatusControllersConfiguration { /// Retry on error #[serde(default, skip_serializing_if = "Option::is_none", rename = "error-retry")] pub error_retry: Option, - /// Base error retry back-off time Format: duration + /// Base error retry back-off time + /// Format: duration #[serde(default, skip_serializing_if = "Option::is_none", rename = "error-retry-base")] pub error_retry_base: Option, - /// Regular synchronization interval Format: duration + /// Regular synchronization interval + /// Format: duration #[serde(default, skip_serializing_if = "Option::is_none")] pub interval: Option, } @@ -102,12 +108,14 @@ pub struct CiliumEndpointStatusControllersStatus { /// Encryption is the encryption configuration of the node #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEndpointStatusEncryption { - /// Key is the index to the key to use for encryption or 0 if encryption is disabled. + /// Key is the index to the key to use for encryption or 0 if encryption is + /// disabled. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, } -/// ExternalIdentifiers is a set of identifiers to identify the endpoint apart from the pod name. This includes container runtime IDs. +/// ExternalIdentifiers is a set of identifiers to identify the endpoint +/// apart from the pod name. This includes container runtime IDs. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEndpointStatusExternalIdentifiers { /// ID assigned to this attachment by container runtime @@ -164,11 +172,13 @@ pub struct CiliumEndpointStatusIdentity { pub labels: Option>, } -/// EndpointStatusChange Indication of a change of status -/// swagger:model EndpointStatusChange +/// EndpointStatusChange Indication of a change of status +/// +/// swagger:model EndpointStatusChange #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEndpointStatusLog { - /// Code indicate type of status change Enum: [ok failed] + /// Code indicate type of status change + /// Enum: [ok failed] #[serde(default, skip_serializing_if = "Option::is_none")] pub code: Option, /// Status message @@ -182,8 +192,9 @@ pub struct CiliumEndpointStatusLog { pub timestamp: Option, } -/// Port Layer 4 port / protocol pair -/// swagger:model Port +/// Port Layer 4 port / protocol pair +/// +/// swagger:model Port #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEndpointStatusNamedPorts { /// Optional layer 4 port name @@ -192,7 +203,8 @@ pub struct CiliumEndpointStatusNamedPorts { /// Layer 4 port number #[serde(default, skip_serializing_if = "Option::is_none")] pub port: Option, - /// Layer 4 protocol Enum: [TCP UDP SCTP ICMP ICMPV6 ANY] + /// Layer 4 protocol + /// Enum: [TCP UDP SCTP ICMP ICMPV6 ANY] #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -202,7 +214,8 @@ pub struct CiliumEndpointStatusNamedPorts { pub struct CiliumEndpointStatusNetworking { /// IP4/6 addresses assigned to this Endpoint pub addressing: Vec, - /// NodeIP is the IP of the node the endpoint is running on. The IP must be reachable between nodes. + /// NodeIP is the IP of the node the endpoint is running on. The IP must + /// be reachable between nodes. #[serde(default, skip_serializing_if = "Option::is_none")] pub node: Option, } @@ -216,7 +229,8 @@ pub struct CiliumEndpointStatusNetworkingAddressing { pub ipv6: Option, } -/// EndpointPolicy represents the endpoint's policy by listing all allowed ingress and egress identities in combination with L4 port and protocol. +/// EndpointPolicy represents the endpoint's policy by listing all allowed +/// ingress and egress identities in combination with L4 port and protocol. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEndpointStatusPolicy { /// EndpointPolicyDirection is the list of allowed identities per direction. @@ -233,10 +247,12 @@ pub struct CiliumEndpointStatusPolicyEgress { /// Deprecated #[serde(default, skip_serializing_if = "Option::is_none")] pub adding: Option>, - /// AllowedIdentityList is a list of IdentityTuples that species peers that are allowed. + /// AllowedIdentityList is a list of IdentityTuples that species peers that are + /// allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub allowed: Option>, - /// DenyIdentityList is a list of IdentityTuples that species peers that are denied. + /// DenyIdentityList is a list of IdentityTuples that species peers that are + /// denied. #[serde(default, skip_serializing_if = "Option::is_none")] pub denied: Option>, pub enforcing: bool, @@ -306,10 +322,12 @@ pub struct CiliumEndpointStatusPolicyIngress { /// Deprecated #[serde(default, skip_serializing_if = "Option::is_none")] pub adding: Option>, - /// AllowedIdentityList is a list of IdentityTuples that species peers that are allowed. + /// AllowedIdentityList is a list of IdentityTuples that species peers that are + /// allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub allowed: Option>, - /// DenyIdentityList is a list of IdentityTuples that species peers that are denied. + /// DenyIdentityList is a list of IdentityTuples that species peers that are + /// denied. #[serde(default, skip_serializing_if = "Option::is_none")] pub denied: Option>, pub enforcing: bool, diff --git a/kube-custom-resources-rs/src/cilium_io/v2/ciliumexternalworkloads.rs b/kube-custom-resources-rs/src/cilium_io/v2/ciliumexternalworkloads.rs index f865c0707..953b525f2 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2/ciliumexternalworkloads.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2/ciliumexternalworkloads.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2/ciliumexternalworkloads.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -17,15 +17,18 @@ use self::prelude::*; #[kube(derive="Default")] #[kube(derive="PartialEq")] pub struct CiliumExternalWorkloadSpec { - /// IPv4AllocCIDR is the range of IPv4 addresses in the CIDR format that the external workload can use to allocate IP addresses for the tunnel device and the health endpoint. + /// IPv4AllocCIDR is the range of IPv4 addresses in the CIDR format that the external workload can + /// use to allocate IP addresses for the tunnel device and the health endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "ipv4-alloc-cidr")] pub ipv4_alloc_cidr: Option, - /// IPv6AllocCIDR is the range of IPv6 addresses in the CIDR format that the external workload can use to allocate IP addresses for the tunnel device and the health endpoint. + /// IPv6AllocCIDR is the range of IPv6 addresses in the CIDR format that the external workload can + /// use to allocate IP addresses for the tunnel device and the health endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "ipv6-alloc-cidr")] pub ipv6_alloc_cidr: Option, } -/// Status is the most recent status of the external Cilium workload. It is a read-only field. +/// Status is the most recent status of the external Cilium workload. +/// It is a read-only field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumExternalWorkloadStatus { /// ID is the numeric identity allocated for the external workload. diff --git a/kube-custom-resources-rs/src/cilium_io/v2/ciliumidentities.rs b/kube-custom-resources-rs/src/cilium_io/v2/ciliumidentities.rs index e4ad0e4c5..7937ccc6e 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2/ciliumidentities.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2/ciliumidentities.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2/ciliumidentities.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cilium_io/v2/ciliumlocalredirectpolicies.rs b/kube-custom-resources-rs/src/cilium_io/v2/ciliumlocalredirectpolicies.rs index 5cfb88525..b98f85baf 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2/ciliumlocalredirectpolicies.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2/ciliumlocalredirectpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2/ciliumlocalredirectpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -18,29 +18,45 @@ use self::prelude::*; #[kube(derive="Default")] #[kube(derive="PartialEq")] pub struct CiliumLocalRedirectPolicySpec { - /// Description can be used by the creator of the policy to describe the purpose of this policy. + /// Description can be used by the creator of the policy to describe the + /// purpose of this policy. #[serde(default, skip_serializing_if = "Option::is_none")] pub description: Option, - /// RedirectBackend specifies backend configuration to redirect traffic to. It can not be empty. + /// RedirectBackend specifies backend configuration to redirect traffic to. + /// It can not be empty. #[serde(rename = "redirectBackend")] pub redirect_backend: CiliumLocalRedirectPolicyRedirectBackend, - /// RedirectFrontend specifies frontend configuration to redirect traffic from. It can not be empty. + /// RedirectFrontend specifies frontend configuration to redirect traffic from. + /// It can not be empty. #[serde(rename = "redirectFrontend")] pub redirect_frontend: CiliumLocalRedirectPolicyRedirectFrontend, - /// SkipRedirectFromBackend indicates whether traffic matching RedirectFrontend from RedirectBackend should skip redirection, and hence the traffic will be forwarded as-is. - /// The default is false which means traffic matching RedirectFrontend will get redirected from all pods, including the RedirectBackend(s). - /// Example: If RedirectFrontend is configured to "169.254.169.254:80" as the traffic that needs to be redirected to backends selected by RedirectBackend, if SkipRedirectFromBackend is set to true, traffic going to "169.254.169.254:80" from such backends will not be redirected back to the backends. Instead, the matched traffic from the backends will be forwarded to the original destination "169.254.169.254:80". + /// SkipRedirectFromBackend indicates whether traffic matching RedirectFrontend + /// from RedirectBackend should skip redirection, and hence the traffic will + /// be forwarded as-is. + /// + /// The default is false which means traffic matching RedirectFrontend will + /// get redirected from all pods, including the RedirectBackend(s). + /// + /// Example: If RedirectFrontend is configured to "169.254.169.254:80" as the traffic + /// that needs to be redirected to backends selected by RedirectBackend, if + /// SkipRedirectFromBackend is set to true, traffic going to "169.254.169.254:80" + /// from such backends will not be redirected back to the backends. Instead, + /// the matched traffic from the backends will be forwarded to the original + /// destination "169.254.169.254:80". #[serde(default, skip_serializing_if = "Option::is_none", rename = "skipRedirectFromBackend")] pub skip_redirect_from_backend: Option, } -/// RedirectBackend specifies backend configuration to redirect traffic to. It can not be empty. +/// RedirectBackend specifies backend configuration to redirect traffic to. +/// It can not be empty. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumLocalRedirectPolicyRedirectBackend { /// LocalEndpointSelector selects node local pod(s) where traffic is redirected to. #[serde(rename = "localEndpointSelector")] pub local_endpoint_selector: CiliumLocalRedirectPolicyRedirectBackendLocalEndpointSelector, - /// ToPorts is a list of L4 ports with protocol of node local pod(s) where traffic is redirected to. When multiple ports are specified, the ports must be named. + /// ToPorts is a list of L4 ports with protocol of node local pod(s) where traffic + /// is redirected to. + /// When multiple ports are specified, the ports must be named. #[serde(rename = "toPorts")] pub to_ports: Vec, } @@ -51,24 +67,32 @@ pub struct CiliumLocalRedirectPolicyRedirectBackendLocalEndpointSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumLocalRedirectPolicyRedirectBackendLocalEndpointSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumLocalRedirectPolicyRedirectBackendLocalEndpointSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumLocalRedirectPolicyRedirectBackendLocalEndpointSelectorMatchExpressionsOperator { In, @@ -80,12 +104,15 @@ pub enum CiliumLocalRedirectPolicyRedirectBackendLocalEndpointSelectorMatchExpre /// PortInfo specifies L4 port number and name along with the transport protocol #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumLocalRedirectPolicyRedirectBackendToPorts { - /// Name is a port name, which must contain at least one [a-z], and may also contain [0-9] and '-' anywhere except adjacent to another '-' or in the beginning or the end. + /// Name is a port name, which must contain at least one [a-z], + /// and may also contain [0-9] and '-' anywhere except adjacent to another + /// '-' or in the beginning or the end. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Port is an L4 port number. The string will be strictly parsed as a single uint16. pub port: String, - /// Protocol is the L4 protocol. Accepted values: "TCP", "UDP" + /// Protocol is the L4 protocol. + /// Accepted values: "TCP", "UDP" pub protocol: CiliumLocalRedirectPolicyRedirectBackendToPortsProtocol, } @@ -98,25 +125,37 @@ pub enum CiliumLocalRedirectPolicyRedirectBackendToPortsProtocol { Udp, } -/// RedirectFrontend specifies frontend configuration to redirect traffic from. It can not be empty. +/// RedirectFrontend specifies frontend configuration to redirect traffic from. +/// It can not be empty. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumLocalRedirectPolicyRedirectFrontend { - /// AddressMatcher is a tuple {IP, port, protocol} that matches traffic to be redirected. + /// AddressMatcher is a tuple {IP, port, protocol} that matches traffic to be + /// redirected. #[serde(default, skip_serializing_if = "Option::is_none", rename = "addressMatcher")] pub address_matcher: Option, - /// ServiceMatcher specifies Kubernetes service and port that matches traffic to be redirected. + /// ServiceMatcher specifies Kubernetes service and port that matches + /// traffic to be redirected. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceMatcher")] pub service_matcher: Option, } -/// AddressMatcher is a tuple {IP, port, protocol} that matches traffic to be redirected. +/// AddressMatcher is a tuple {IP, port, protocol} that matches traffic to be +/// redirected. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumLocalRedirectPolicyRedirectFrontendAddressMatcher { - /// IP is a destination ip address for traffic to be redirected. - /// Example: When it is set to "169.254.169.254", traffic destined to "169.254.169.254" is redirected. + /// IP is a destination ip address for traffic to be redirected. + /// + /// Example: + /// When it is set to "169.254.169.254", traffic destined to + /// "169.254.169.254" is redirected. pub ip: String, - /// ToPorts is a list of destination L4 ports with protocol for traffic to be redirected. When multiple ports are specified, the ports must be named. - /// Example: When set to Port: "53" and Protocol: UDP, traffic destined to port '53' with UDP protocol is redirected. + /// ToPorts is a list of destination L4 ports with protocol for traffic + /// to be redirected. + /// When multiple ports are specified, the ports must be named. + /// + /// Example: + /// When set to Port: "53" and Protocol: UDP, traffic destined to port '53' + /// with UDP protocol is redirected. #[serde(rename = "toPorts")] pub to_ports: Vec, } @@ -124,12 +163,15 @@ pub struct CiliumLocalRedirectPolicyRedirectFrontendAddressMatcher { /// PortInfo specifies L4 port number and name along with the transport protocol #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumLocalRedirectPolicyRedirectFrontendAddressMatcherToPorts { - /// Name is a port name, which must contain at least one [a-z], and may also contain [0-9] and '-' anywhere except adjacent to another '-' or in the beginning or the end. + /// Name is a port name, which must contain at least one [a-z], + /// and may also contain [0-9] and '-' anywhere except adjacent to another + /// '-' or in the beginning or the end. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Port is an L4 port number. The string will be strictly parsed as a single uint16. pub port: String, - /// Protocol is the L4 protocol. Accepted values: "TCP", "UDP" + /// Protocol is the L4 protocol. + /// Accepted values: "TCP", "UDP" pub protocol: CiliumLocalRedirectPolicyRedirectFrontendAddressMatcherToPortsProtocol, } @@ -142,16 +184,29 @@ pub enum CiliumLocalRedirectPolicyRedirectFrontendAddressMatcherToPortsProtocol Udp, } -/// ServiceMatcher specifies Kubernetes service and port that matches traffic to be redirected. +/// ServiceMatcher specifies Kubernetes service and port that matches +/// traffic to be redirected. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumLocalRedirectPolicyRedirectFrontendServiceMatcher { - /// Namespace is the Kubernetes service namespace. The service namespace must match the namespace of the parent Local Redirect Policy. For Cluster-wide Local Redirect Policy, this can be any namespace. + /// Namespace is the Kubernetes service namespace. + /// The service namespace must match the namespace of the parent Local + /// Redirect Policy. For Cluster-wide Local Redirect Policy, this + /// can be any namespace. pub namespace: String, - /// Name is the name of a destination Kubernetes service that identifies traffic to be redirected. The service type needs to be ClusterIP. - /// Example: When this field is populated with 'serviceName:myService', all the traffic destined to the cluster IP of this service at the (specified) service port(s) will be redirected. + /// Name is the name of a destination Kubernetes service that identifies traffic + /// to be redirected. + /// The service type needs to be ClusterIP. + /// + /// Example: + /// When this field is populated with 'serviceName:myService', all the traffic + /// destined to the cluster IP of this service at the (specified) + /// service port(s) will be redirected. #[serde(rename = "serviceName")] pub service_name: String, - /// ToPorts is a list of destination service L4 ports with protocol for traffic to be redirected. If not specified, traffic for all the service ports will be redirected. When multiple ports are specified, the ports must be named. + /// ToPorts is a list of destination service L4 ports with protocol for + /// traffic to be redirected. If not specified, traffic for all the service + /// ports will be redirected. + /// When multiple ports are specified, the ports must be named. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, } @@ -159,12 +214,15 @@ pub struct CiliumLocalRedirectPolicyRedirectFrontendServiceMatcher { /// PortInfo specifies L4 port number and name along with the transport protocol #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumLocalRedirectPolicyRedirectFrontendServiceMatcherToPorts { - /// Name is a port name, which must contain at least one [a-z], and may also contain [0-9] and '-' anywhere except adjacent to another '-' or in the beginning or the end. + /// Name is a port name, which must contain at least one [a-z], + /// and may also contain [0-9] and '-' anywhere except adjacent to another + /// '-' or in the beginning or the end. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Port is an L4 port number. The string will be strictly parsed as a single uint16. pub port: String, - /// Protocol is the L4 protocol. Accepted values: "TCP", "UDP" + /// Protocol is the L4 protocol. + /// Accepted values: "TCP", "UDP" pub protocol: CiliumLocalRedirectPolicyRedirectFrontendServiceMatcherToPortsProtocol, } @@ -177,10 +235,10 @@ pub enum CiliumLocalRedirectPolicyRedirectFrontendServiceMatcherToPortsProtocol Udp, } -/// Status is the most recent status of the local redirect policy. It is a read-only field. +/// Status is the most recent status of the local redirect policy. +/// It is a read-only field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumLocalRedirectPolicyStatus { - /// TODO Define status(aditi) #[serde(default, skip_serializing_if = "Option::is_none")] pub ok: Option, } diff --git a/kube-custom-resources-rs/src/cilium_io/v2/ciliumnetworkpolicies.rs b/kube-custom-resources-rs/src/cilium_io/v2/ciliumnetworkpolicies.rs index 9db8a2061..04c180189 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2/ciliumnetworkpolicies.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2/ciliumnetworkpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2/ciliumnetworkpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -21,86 +21,193 @@ use self::prelude::*; #[kube(derive="Default")] #[kube(derive="PartialEq")] pub struct CiliumNetworkPolicySpec { - /// Description is a free form string, it can be used by the creator of the rule to store human readable explanation of the purpose of this rule. Rules cannot be identified by comment. + /// Description is a free form string, it can be used by the creator of + /// the rule to store human readable explanation of the purpose of this + /// rule. Rules cannot be identified by comment. #[serde(default, skip_serializing_if = "Option::is_none")] pub description: Option, - /// Egress is a list of EgressRule which are enforced at egress. If omitted or empty, this rule does not apply at egress. + /// Egress is a list of EgressRule which are enforced at egress. + /// If omitted or empty, this rule does not apply at egress. #[serde(default, skip_serializing_if = "Option::is_none")] pub egress: Option>, - /// EgressDeny is a list of EgressDenyRule which are enforced at egress. Any rule inserted here will be denied regardless of the allowed egress rules in the 'egress' field. If omitted or empty, this rule does not apply at egress. + /// EgressDeny is a list of EgressDenyRule which are enforced at egress. + /// Any rule inserted here will be denied regardless of the allowed egress + /// rules in the 'egress' field. + /// If omitted or empty, this rule does not apply at egress. #[serde(default, skip_serializing_if = "Option::is_none", rename = "egressDeny")] pub egress_deny: Option>, - /// EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. - /// If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. - /// If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. - /// This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode. + /// EnableDefaultDeny determines whether this policy configures the + /// subject endpoint(s) to have a default deny mode. If enabled, + /// this causes all traffic not explicitly allowed by a network policy + /// to be dropped. + /// + /// If not specified, the default is true for each traffic direction + /// that has rules, and false otherwise. For example, if a policy + /// only has Ingress or IngressDeny rules, then the default for + /// ingress is true and egress is false. + /// + /// If multiple policies apply to an endpoint, that endpoint's default deny + /// will be enabled if any policy requests it. + /// + /// This is useful for creating broad-based network policies that will not + /// cause endpoints to enter default-deny mode. #[serde(default, skip_serializing_if = "Option::is_none", rename = "enableDefaultDeny")] pub enable_default_deny: Option, - /// EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. + /// EndpointSelector selects all endpoints which should be subject to + /// this rule. EndpointSelector and NodeSelector cannot be both empty and + /// are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endpointSelector")] pub endpoint_selector: Option, - /// Ingress is a list of IngressRule which are enforced at ingress. If omitted or empty, this rule does not apply at ingress. + /// Ingress is a list of IngressRule which are enforced at ingress. + /// If omitted or empty, this rule does not apply at ingress. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingress: Option>, - /// IngressDeny is a list of IngressDenyRule which are enforced at ingress. Any rule inserted here will be denied regardless of the allowed ingress rules in the 'ingress' field. If omitted or empty, this rule does not apply at ingress. + /// IngressDeny is a list of IngressDenyRule which are enforced at ingress. + /// Any rule inserted here will be denied regardless of the allowed ingress + /// rules in the 'ingress' field. + /// If omitted or empty, this rule does not apply at ingress. #[serde(default, skip_serializing_if = "Option::is_none", rename = "ingressDeny")] pub ingress_deny: Option>, - /// Labels is a list of optional strings which can be used to re-identify the rule or to store metadata. It is possible to lookup or delete strings based on labels. Labels are not required to be unique, multiple rules can have overlapping or identical labels. + /// Labels is a list of optional strings which can be used to + /// re-identify the rule or to store metadata. It is possible to lookup + /// or delete strings based on labels. Labels are not required to be + /// unique, multiple rules can have overlapping or identical labels. #[serde(default, skip_serializing_if = "Option::is_none")] pub labels: Option>, - /// NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies. + /// NodeSelector selects all nodes which should be subject to this rule. + /// EndpointSelector and NodeSelector cannot be both empty and are mutually + /// exclusive. Can only be used in CiliumClusterwideNetworkPolicies. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeSelector")] pub node_selector: Option, } -/// EgressRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. -/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule. +/// EgressRule contains all rule types which can be applied at egress, i.e. +/// network traffic that originates inside the endpoint and exits the endpoint +/// selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members of the structure are specified, then all members +/// must match in order for the rule to take effect. The exception to this +/// rule is the ToRequires member; the effects of any Requires field in any +/// rule will apply to all other rules as well. +/// +/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are +/// mutually exclusive. Only one of these members may be present within an +/// individual rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgress { /// Authentication is the required authentication type for the allowed traffic, if any. #[serde(default, skip_serializing_if = "Option::is_none")] pub authentication: Option, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to connect to. - /// Example: Any endpoint with the label "app=httpd" is allowed to initiate type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is allowed to connect to. + /// + /// Example: + /// Any endpoint with the label "app=httpd" is allowed to initiate + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 + /// ToCIDR is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections. Only connections destined for + /// outside of the cluster and not targeting the host will be subject + /// to CIDR rules. This will match on the destination IP address of + /// outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet + /// with no ExcludeCIDRs is equivalent. Overlaps are allowed between + /// ToCIDR and ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDR")] pub to_cidr: Option>, - /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. + /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections to in addition to connections + /// which are allowed via ToEndpoints, along with a list of subnets contained + /// within their corresponding IP block to which traffic should not be + /// allowed. This will match on the destination IP address of outgoing + /// connections. Adding a prefix into ToCIDR or into ToCIDRSet with no + /// ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and + /// ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDRSet")] pub to_cidr_set: Option>, - /// ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. - /// Example: Any endpoint with the label "role=frontend" can communicate with any endpoint carrying the label "role=backend". + /// ToEndpoints is a list of endpoints identified by an EndpointSelector to + /// which the endpoints subject to the rule are allowed to communicate. + /// + /// Example: + /// Any endpoint with the label "role=frontend" can communicate with any + /// endpoint carrying the label "role=backend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEndpoints")] pub to_endpoints: Option>, - /// ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`. + /// ToEntities is a list of special entities to which the endpoint subject + /// to the rule is allowed to initiate connections. Supported entities are + /// `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, + /// `health`,`unmanaged` and `all`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEntities")] pub to_entities: Option>, - /// ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result from DNS resolution of `ToFQDN.MatchName`s are added to the same EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and L7 rules within this EgressRule will also apply to these IPs. The DNS -> IP mapping is re-resolved periodically from within the cilium-agent, and the IPs in the DNS response are effected in the policy for selected pods as-is (i.e. the list of IPs is not modified in any way). Note: An explicit rule to allow for DNS traffic is needed for the pods, as ToFQDN counts as an egress rule and will enforce egress policy when PolicyEnforcment=default. Note: If the resolved IPs are IPs within the kubernetes cluster, the ToFQDN rule will not apply to that IP. Note: ToFQDN cannot occur in the same policy as other To* rules. + /// ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result + /// from DNS resolution of `ToFQDN.MatchName`s are added to the same + /// EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and + /// L7 rules within this EgressRule will also apply to these IPs. + /// The DNS -> IP mapping is re-resolved periodically from within the + /// cilium-agent, and the IPs in the DNS response are effected in the policy + /// for selected pods as-is (i.e. the list of IPs is not modified in any way). + /// Note: An explicit rule to allow for DNS traffic is needed for the pods, as + /// ToFQDN counts as an egress rule and will enforce egress policy when + /// PolicyEnforcment=default. + /// Note: If the resolved IPs are IPs within the kubernetes cluster, the + /// ToFQDN rule will not apply to that IP. + /// Note: ToFQDN cannot occur in the same policy as other To* rules. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toFQDNs")] pub to_fqd_ns: Option>, - /// ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// ToGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// toGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "toGroups")] pub to_groups: Option>, - /// ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate. + /// ToNodes is a list of nodes identified by an + /// EndpointSelector to which endpoints subject to the rule is allowed to communicate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toNodes")] pub to_nodes: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to connect to. - /// Example: Any endpoint with the label "role=frontend" is allowed to initiate connections to destination port 8080/tcp + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is allowed to + /// connect to. + /// + /// Example: + /// Any endpoint with the label "role=frontend" is allowed to initiate + /// connections to destination port 8080/tcp #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, - /// ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. - /// Example: Any Endpoint with the label "team=A" requires any endpoint to which it communicates to also carry the label "team=A". + /// ToRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be able to connect to other + /// endpoints. These additional constraints do no by itself grant access + /// privileges and must always be accompanied with at least one matching + /// ToEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires any endpoint to which it + /// communicates to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toRequires")] pub to_requires: Option>, - /// ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. - /// Example: Any endpoint with the label "app=backend-app" is allowed to initiate connections to all cidrs backing the "external-service" service + /// ToServices is a list of services to which the endpoint subject + /// to the rule is allowed to initiate connections. + /// Currently Cilium only supports toServices for K8s services without + /// selectors. + /// + /// Example: + /// Any endpoint with the label "app=backend-app" is allowed to + /// initiate connections to all cidrs backing the "external-service" service #[serde(default, skip_serializing_if = "Option::is_none", rename = "toServices")] pub to_services: Option>, } @@ -134,10 +241,25 @@ pub struct CiliumNetworkPolicyEgressIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -149,16 +271,26 @@ pub enum CiliumNetworkPolicyEgressIcmpsFieldsFamily { IPv6, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -169,24 +301,32 @@ pub struct CiliumNetworkPolicyEgressToEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyEgressToEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyEgressToEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressToEndpointsMatchExpressionsOperator { In, @@ -197,16 +337,33 @@ pub enum CiliumNetworkPolicyEgressToEndpointsMatchExpressionsOperator { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToFqdNs { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -233,24 +390,32 @@ pub struct CiliumNetworkPolicyEgressToNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyEgressToNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyEgressToNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressToNodesMatchExpressionsOperator { In, @@ -259,81 +424,131 @@ pub enum CiliumNetworkPolicyEgressToNodesMatchExpressionsOperator { DoesNotExist, } -/// PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met. +/// PortRule is a list of ports/protocol combinations with optional Layer 7 +/// rules which must be met. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPorts { - /// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. + /// listener specifies the name of a custom Envoy listener to which this traffic should be + /// redirected to. #[serde(default, skip_serializing_if = "Option::is_none")] pub listener: Option, - /// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. + /// OriginatingTLS is the TLS context for the connections originated by + /// the L7 proxy. For egress policy this specifies the client-side TLS + /// parameters for the upstream connection originating from the L7 proxy + /// to the remote destination. For ingress policy this specifies the + /// client-side TLS parameters for the connection from the L7 proxy to + /// the local endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "originatingTLS")] pub originating_tls: Option, /// Ports is a list of L4 port/protocol #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. + /// Rules is a list of additional port level rules which must be met in + /// order for the PortRule to allow the traffic. If omitted or empty, + /// no layer 7 rules are enforced. #[serde(default, skip_serializing_if = "Option::is_none")] pub rules: Option, - /// ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake. + /// ServerNames is a list of allowed TLS SNI values. If not empty, then + /// TLS must be present and one of the provided SNIs must be indicated in the + /// TLS handshake. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serverNames")] pub server_names: Option>, - /// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. + /// TerminatingTLS is the TLS context for the connection terminated by + /// the L7 proxy. For egress policy this specifies the server-side TLS + /// parameters to be applied on the connections originated from the local + /// endpoint and terminated by the L7 proxy. For ingress policy this specifies + /// the server-side TLS parameters to be applied on the connections + /// originated from a remote source and terminated by the L7 proxy. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminatingTLS")] pub terminating_tls: Option, } -/// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. +/// listener specifies the name of a custom Envoy listener to which this traffic should be +/// redirected to. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsListener { - /// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. + /// EnvoyConfig is a reference to the CEC or CCEC resource in which + /// the listener is defined. #[serde(rename = "envoyConfig")] pub envoy_config: CiliumNetworkPolicyEgressToPortsListenerEnvoyConfig, /// Name is the name of the listener. pub name: String, - /// Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent. + /// Priority for this Listener that is used when multiple rules would apply different + /// listeners to a policy map entry. Behavior of this is implementation dependent. #[serde(default, skip_serializing_if = "Option::is_none")] pub priority: Option, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsListenerEnvoyConfig { - /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed. + /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or + /// CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, + /// respectively. The only case this is currently explicitly needed is when referring to a + /// CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener + /// from a cluster scoped policy is not allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in. + /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where + /// the listener is defined in. pub name: String, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressToPortsListenerEnvoyConfigKind { CiliumEnvoyConfig, CiliumClusterwideEnvoyConfig, } -/// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. +/// OriginatingTLS is the TLS context for the connections originated by +/// the L7 proxy. For egress policy this specifies the client-side TLS +/// parameters for the upstream connection originating from the L7 proxy +/// to the remote destination. For ingress policy this specifies the +/// client-side TLS parameters for the connection from the L7 proxy to +/// the local endpoint. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsOriginatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumNetworkPolicyEgressToPortsOriginatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsOriginatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -344,11 +559,16 @@ pub struct CiliumNetworkPolicyEgressToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -366,7 +586,9 @@ pub enum CiliumNetworkPolicyEgressToPortsPortsProtocol { Any, } -/// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. +/// Rules is a list of additional port level rules which must be met in +/// order for the PortRule to allow the traffic. If omitted or empty, +/// no layer 7 rules are enforced. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsRules { /// DNS-specific rules. @@ -389,57 +611,105 @@ pub struct CiliumNetworkPolicyEgressToPortsRules { /// PortRuleDNS is a list of allowed DNS lookups. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsRulesDns { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. -/// All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. +/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule does not have any +/// effect. +/// +/// All fields of this type are extended POSIX regex as defined by IEEE Std +/// 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) +/// matched against the path of an incoming request. Currently it can contain +/// characters disallowed from the conventional "path" part of a URL as defined +/// by RFC 3986. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsRulesHttp { - /// HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match. + /// HeaderMatches is a list of HTTP headers which must be + /// present and match against the given values. Mismatch field can be used + /// to specify what to do when there is no match. #[serde(default, skip_serializing_if = "Option::is_none", rename = "headerMatches")] pub header_matches: Option>, - /// Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present. + /// Headers is a list of HTTP headers which must be present in the + /// request. If omitted or empty, requests are allowed regardless of + /// headers present. #[serde(default, skip_serializing_if = "Option::is_none")] pub headers: Option>, - /// Host is an extended POSIX regex matched against the host header of a request. Examples: - /// - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\.bar\.com will only match the host foo.bar.com - /// If omitted or empty, the value of the host header is ignored. + /// Host is an extended POSIX regex matched against the host header of a + /// request. Examples: + /// + /// - foo.bar.com will match the host fooXbar.com or foo-bar.com + /// - foo\.bar\.com will only match the host foo.bar.com + /// + /// If omitted or empty, the value of the host header is ignored. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Method is an extended POSIX regex matched against the method of a request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... - /// If omitted or empty, all methods are allowed. + /// Method is an extended POSIX regex matched against the method of a + /// request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... + /// + /// If omitted or empty, all methods are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub method: Option, - /// Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. - /// If omitted or empty, all paths are all allowed. + /// Path is an extended POSIX regex matched against the path of a + /// request. Currently it can contain characters disallowed from the + /// conventional "path" part of a URL as defined by RFC 3986. + /// + /// If omitted or empty, all paths are all allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsRulesHttpHeaderMatches { - /// Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log. + /// Mismatch identifies what to do in case there is no match. The default is + /// to drop the request. Otherwise the overall rule is still considered as + /// matching, but the mismatches are logged in the access log. #[serde(default, skip_serializing_if = "Option::is_none")] pub mismatch: Option, /// Name identifies the header. pub name: String, - /// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. + /// Secret refers to a secret that contains the value to be matched against. + /// The secret must only contain one entry. If the referred secret does not + /// exist, and there is no "Value" specified, the match will fail. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, - /// Value matches the exact value of the header. Can be specified either alone or together with "Secret"; will be used as the header value if the secret can not be found in the latter case. + /// Value matches the exact value of the header. Can be specified either + /// alone or together with "Secret"; will be used as the header value if the + /// secret can not be found in the latter case. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressToPortsRulesHttpHeaderMatchesMismatch { #[serde(rename = "LOG")] @@ -452,47 +722,89 @@ pub enum CiliumNetworkPolicyEgressToPortsRulesHttpHeaderMatchesMismatch { Replace, } -/// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. +/// Secret refers to a secret that contains the value to be matched against. +/// The secret must only contain one entry. If the referred secret does not +/// exist, and there is no "Value" specified, the match will fail. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsRulesHttpHeaderMatchesSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsRulesKafka { - /// APIKey is a case-insensitive string matched against the key of a request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys - /// If omitted or empty, and if Role is not specified, then all keys are allowed. + /// APIKey is a case-insensitive string matched against the key of a + /// request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al + /// Reference: https://kafka.apache.org/protocol#protocol_api_keys + /// + /// If omitted or empty, and if Role is not specified, then all keys are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiKey")] pub api_key: Option, - /// APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. - /// If omitted or empty, all versions are allowed. + /// APIVersion is the version matched against the api version of the + /// Kafka message. If set, it has to be a string representing a positive + /// integer. + /// + /// If omitted or empty, all versions are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] pub api_version: Option, - /// ClientID is the client identifier as provided in the request. - /// From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. - /// If omitted or empty, all client identifiers are allowed. + /// ClientID is the client identifier as provided in the request. + /// + /// From Kafka protocol documentation: + /// This is a user supplied identifier for the client application. The + /// user can use any identifier they like and it will be used when + /// logging errors, monitoring aggregates, etc. For example, one might + /// want to monitor not just the requests per second overall, but the + /// number coming from each client application (each of which could + /// reside on multiple servers). This id acts as a logical grouping + /// across all requests from a particular client. + /// + /// If omitted or empty, all client identifiers are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "clientID")] pub client_id: Option, - /// Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as "produce" or "consume". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. - /// The following values are supported: - "produce": Allow producing to the topics specified in the rule - "consume": Allow consuming from the topics specified in the rule - /// This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. - /// If omitted or empty, and if APIKey is not specified, then all keys are allowed. + /// Role is a case-insensitive string and describes a group of API keys + /// necessary to perform certain higher-level Kafka operations such as "produce" + /// or "consume". A Role automatically expands into all APIKeys required + /// to perform the specified higher-level operation. + /// + /// The following values are supported: + /// - "produce": Allow producing to the topics specified in the rule + /// - "consume": Allow consuming from the topics specified in the rule + /// + /// This field is incompatible with the APIKey field, i.e APIKey and Role + /// cannot both be specified in the same rule. + /// + /// If omitted or empty, and if APIKey is not specified, then all keys are + /// allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub role: Option, - /// Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. - /// This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. - /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. - /// If omitted or empty, all topics are allowed. + /// Topic is the topic name contained in the message. If a Kafka request + /// contains multiple topics, then all topics must be allowed or the + /// message will be rejected. + /// + /// This constraint is ignored if the matched request message type + /// doesn't contain any topic. Maximum size of Topic can be 249 + /// characters as per recent Kafka spec and allowed characters are + /// a-z, A-Z, 0-9, -, . and _. + /// + /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 + /// version the length was changed from 255 to 249. For compatibility + /// reasons we are using 255. + /// + /// If omitted or empty, all topics are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub topic: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressToPortsRulesKafkaRole { #[serde(rename = "produce")] @@ -501,28 +813,52 @@ pub enum CiliumNetworkPolicyEgressToPortsRulesKafkaRole { Consume, } -/// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. +/// TerminatingTLS is the TLS context for the connection terminated by +/// the L7 proxy. For egress policy this specifies the server-side TLS +/// parameters to be applied on the connections originated from the local +/// endpoint and terminated by the L7 proxy. For ingress policy this specifies +/// the server-side TLS parameters to be applied on the connections +/// originated from a remote source and terminated by the L7 proxy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsTerminatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumNetworkPolicyEgressToPortsTerminatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressToPortsTerminatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -533,24 +869,32 @@ pub struct CiliumNetworkPolicyEgressToRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyEgressToRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyEgressToRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressToRequiresMatchExpressionsOperator { In, @@ -594,24 +938,32 @@ pub struct CiliumNetworkPolicyEgressToServicesK8sServiceSelectorSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyEgressToServicesK8sServiceSelectorSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyEgressToServicesK8sServiceSelectorSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressToServicesK8sServiceSelectorSelectorMatchExpressionsOperator { In, @@ -620,48 +972,115 @@ pub enum CiliumNetworkPolicyEgressToServicesK8sServiceSelectorSelectorMatchExpre DoesNotExist, } -/// EgressDenyRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. -/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule. +/// EgressDenyRule contains all rule types which can be applied at egress, i.e. +/// network traffic that originates inside the endpoint and exits the endpoint +/// selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members of the structure are specified, then all members +/// must match in order for the rule to take effect. The exception to this +/// rule is the ToRequires member; the effects of any Requires field in any +/// rule will apply to all other rules as well. +/// +/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are +/// mutually exclusive. Only one of these members may be present within an +/// individual rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressDeny { - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to connect to. - /// Example: Any endpoint with the label "app=httpd" is not allowed to initiate type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is not allowed to connect to. + /// + /// Example: + /// Any endpoint with the label "app=httpd" is not allowed to initiate + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 + /// ToCIDR is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections. Only connections destined for + /// outside of the cluster and not targeting the host will be subject + /// to CIDR rules. This will match on the destination IP address of + /// outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet + /// with no ExcludeCIDRs is equivalent. Overlaps are allowed between + /// ToCIDR and ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDR")] pub to_cidr: Option>, - /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. + /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections to in addition to connections + /// which are allowed via ToEndpoints, along with a list of subnets contained + /// within their corresponding IP block to which traffic should not be + /// allowed. This will match on the destination IP address of outgoing + /// connections. Adding a prefix into ToCIDR or into ToCIDRSet with no + /// ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and + /// ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDRSet")] pub to_cidr_set: Option>, - /// ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. - /// Example: Any endpoint with the label "role=frontend" can communicate with any endpoint carrying the label "role=backend". + /// ToEndpoints is a list of endpoints identified by an EndpointSelector to + /// which the endpoints subject to the rule are allowed to communicate. + /// + /// Example: + /// Any endpoint with the label "role=frontend" can communicate with any + /// endpoint carrying the label "role=backend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEndpoints")] pub to_endpoints: Option>, - /// ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`. + /// ToEntities is a list of special entities to which the endpoint subject + /// to the rule is allowed to initiate connections. Supported entities are + /// `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, + /// `health`,`unmanaged` and `all`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEntities")] pub to_entities: Option>, - /// ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// ToGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// toGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "toGroups")] pub to_groups: Option>, - /// ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate. + /// ToNodes is a list of nodes identified by an + /// EndpointSelector to which endpoints subject to the rule is allowed to communicate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toNodes")] pub to_nodes: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to connect to. - /// Example: Any endpoint with the label "role=frontend" is not allowed to initiate connections to destination port 8080/tcp + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is not allowed to connect + /// to. + /// + /// Example: + /// Any endpoint with the label "role=frontend" is not allowed to initiate + /// connections to destination port 8080/tcp #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, - /// ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. - /// Example: Any Endpoint with the label "team=A" requires any endpoint to which it communicates to also carry the label "team=A". + /// ToRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be able to connect to other + /// endpoints. These additional constraints do no by itself grant access + /// privileges and must always be accompanied with at least one matching + /// ToEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires any endpoint to which it + /// communicates to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toRequires")] pub to_requires: Option>, - /// ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. - /// Example: Any endpoint with the label "app=backend-app" is allowed to initiate connections to all cidrs backing the "external-service" service + /// ToServices is a list of services to which the endpoint subject + /// to the rule is allowed to initiate connections. + /// Currently Cilium only supports toServices for K8s services without + /// selectors. + /// + /// Example: + /// Any endpoint with the label "app=backend-app" is allowed to + /// initiate connections to all cidrs backing the "external-service" service #[serde(default, skip_serializing_if = "Option::is_none", rename = "toServices")] pub to_services: Option>, } @@ -677,10 +1096,25 @@ pub struct CiliumNetworkPolicyEgressDenyIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressDenyIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -692,16 +1126,26 @@ pub enum CiliumNetworkPolicyEgressDenyIcmpsFieldsFamily { IPv6, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressDenyToCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -712,24 +1156,32 @@ pub struct CiliumNetworkPolicyEgressDenyToEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyEgressDenyToEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyEgressDenyToEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressDenyToEndpointsMatchExpressionsOperator { In, @@ -738,7 +1190,8 @@ pub enum CiliumNetworkPolicyEgressDenyToEndpointsMatchExpressionsOperator { DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressDenyToGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -765,24 +1218,32 @@ pub struct CiliumNetworkPolicyEgressDenyToNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyEgressDenyToNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyEgressDenyToNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressDenyToNodesMatchExpressionsOperator { In, @@ -791,7 +1252,9 @@ pub enum CiliumNetworkPolicyEgressDenyToNodesMatchExpressionsOperator { DoesNotExist, } -/// PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies. +/// PortDenyRule is a list of ports/protocol that should be used for deny +/// policies. This structure lacks the L7Rules since it's not supported in deny +/// policies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEgressDenyToPorts { /// Ports is a list of L4 port/protocol @@ -805,11 +1268,16 @@ pub struct CiliumNetworkPolicyEgressDenyToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -833,24 +1301,32 @@ pub struct CiliumNetworkPolicyEgressDenyToRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyEgressDenyToRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyEgressDenyToRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressDenyToRequiresMatchExpressionsOperator { In, @@ -894,24 +1370,32 @@ pub struct CiliumNetworkPolicyEgressDenyToServicesK8sServiceSelectorSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressionsOperator { In, @@ -920,44 +1404,67 @@ pub enum CiliumNetworkPolicyEgressDenyToServicesK8sServiceSelectorSelectorMatchE DoesNotExist, } -/// EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. -/// If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. -/// If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. -/// This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode. +/// EnableDefaultDeny determines whether this policy configures the +/// subject endpoint(s) to have a default deny mode. If enabled, +/// this causes all traffic not explicitly allowed by a network policy +/// to be dropped. +/// +/// If not specified, the default is true for each traffic direction +/// that has rules, and false otherwise. For example, if a policy +/// only has Ingress or IngressDeny rules, then the default for +/// ingress is true and egress is false. +/// +/// If multiple policies apply to an endpoint, that endpoint's default deny +/// will be enabled if any policy requests it. +/// +/// This is useful for creating broad-based network policies that will not +/// cause endpoints to enter default-deny mode. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEnableDefaultDeny { - /// Whether or not the endpoint should have a default-deny rule applied to egress traffic. + /// Whether or not the endpoint should have a default-deny rule applied + /// to egress traffic. #[serde(default, skip_serializing_if = "Option::is_none")] pub egress: Option, - /// Whether or not the endpoint should have a default-deny rule applied to ingress traffic. + /// Whether or not the endpoint should have a default-deny rule applied + /// to ingress traffic. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingress: Option, } -/// EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. +/// EndpointSelector selects all endpoints which should be subject to +/// this rule. EndpointSelector and NodeSelector cannot be both empty and +/// are mutually exclusive. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyEndpointSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyEndpointSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyEndpointSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyEndpointSelectorMatchExpressionsOperator { In, @@ -966,47 +1473,109 @@ pub enum CiliumNetworkPolicyEndpointSelectorMatchExpressionsOperator { DoesNotExist, } -/// IngressRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. -/// - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule. +/// IngressRule contains all rule types which can be applied at ingress, +/// i.e. network traffic that originates outside of the endpoint and +/// is entering the endpoint selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members are set, all of them need to match in order for +/// the rule to take effect. The exception to this rule is FromRequires field; +/// the effects of any Requires field in any rule will apply to all other +/// rules as well. +/// +/// - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually +/// exclusive. Only one of these members may be present within an individual +/// rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngress { /// Authentication is the required authentication type for the allowed traffic, if any. #[serde(default, skip_serializing_if = "Option::is_none")] pub authentication: Option, - /// FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.3.9.1 + /// FromCIDR is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from. Only connections which + /// do *not* originate from the cluster or from the local host are subject + /// to CIDR rules. In order to allow in-cluster connectivity, use the + /// FromEndpoints field. This will match on the source IP address of + /// incoming connections. Adding a prefix into FromCIDR or into + /// FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are + /// allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.3.9.1 #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDR")] pub from_cidr: Option>, - /// FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. + /// FromCIDRSet is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from in addition to FromEndpoints, + /// along with a list of subnets contained within their corresponding IP block + /// from which traffic should not be allowed. + /// This will match on the source IP address of incoming connections. Adding + /// a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is + /// equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDRSet")] pub from_cidr_set: Option>, - /// FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. - /// Example: Any endpoint with the label "role=backend" can be consumed by any endpoint carrying the label "role=frontend". + /// FromEndpoints is a list of endpoints identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. + /// + /// Example: + /// Any endpoint with the label "role=backend" can be consumed by any + /// endpoint carrying the label "role=frontend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEndpoints")] pub from_endpoints: Option>, - /// FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host` + /// FromEntities is a list of special entities which the endpoint subject + /// to the rule is allowed to receive connections from. Supported entities are + /// `world`, `cluster` and `host` #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEntities")] pub from_entities: Option>, - /// FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// FromGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// FromGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromGroups")] pub from_groups: Option>, - /// FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. + /// FromNodes is a list of nodes identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromNodes")] pub from_nodes: Option>, - /// FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. - /// Example: Any Endpoint with the label "team=A" requires consuming endpoint to also carry the label "team=A". + /// FromRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be reachable. These + /// additional constraints do no by itself grant access privileges and + /// must always be accompanied with at least one matching FromEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires consuming endpoint + /// to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromRequires")] pub from_requires: Option>, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can only accept incoming type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can only accept incoming + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can only accept incoming connections on port 80/tcp. + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can only accept incoming + /// connections on port 80/tcp. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, } @@ -1029,16 +1598,26 @@ pub enum CiliumNetworkPolicyIngressAuthenticationMode { TestAlwaysFail, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressFromCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -1049,24 +1628,32 @@ pub struct CiliumNetworkPolicyIngressFromEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyIngressFromEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyIngressFromEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyIngressFromEndpointsMatchExpressionsOperator { In, @@ -1075,7 +1662,8 @@ pub enum CiliumNetworkPolicyIngressFromEndpointsMatchExpressionsOperator { DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressFromGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -1102,24 +1690,32 @@ pub struct CiliumNetworkPolicyIngressFromNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyIngressFromNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyIngressFromNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyIngressFromNodesMatchExpressionsOperator { In, @@ -1134,24 +1730,32 @@ pub struct CiliumNetworkPolicyIngressFromRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyIngressFromRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyIngressFromRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyIngressFromRequiresMatchExpressionsOperator { In, @@ -1171,10 +1775,25 @@ pub struct CiliumNetworkPolicyIngressIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -1186,81 +1805,131 @@ pub enum CiliumNetworkPolicyIngressIcmpsFieldsFamily { IPv6, } -/// PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met. +/// PortRule is a list of ports/protocol combinations with optional Layer 7 +/// rules which must be met. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPorts { - /// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. + /// listener specifies the name of a custom Envoy listener to which this traffic should be + /// redirected to. #[serde(default, skip_serializing_if = "Option::is_none")] pub listener: Option, - /// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. + /// OriginatingTLS is the TLS context for the connections originated by + /// the L7 proxy. For egress policy this specifies the client-side TLS + /// parameters for the upstream connection originating from the L7 proxy + /// to the remote destination. For ingress policy this specifies the + /// client-side TLS parameters for the connection from the L7 proxy to + /// the local endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "originatingTLS")] pub originating_tls: Option, /// Ports is a list of L4 port/protocol #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. + /// Rules is a list of additional port level rules which must be met in + /// order for the PortRule to allow the traffic. If omitted or empty, + /// no layer 7 rules are enforced. #[serde(default, skip_serializing_if = "Option::is_none")] pub rules: Option, - /// ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake. + /// ServerNames is a list of allowed TLS SNI values. If not empty, then + /// TLS must be present and one of the provided SNIs must be indicated in the + /// TLS handshake. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serverNames")] pub server_names: Option>, - /// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. + /// TerminatingTLS is the TLS context for the connection terminated by + /// the L7 proxy. For egress policy this specifies the server-side TLS + /// parameters to be applied on the connections originated from the local + /// endpoint and terminated by the L7 proxy. For ingress policy this specifies + /// the server-side TLS parameters to be applied on the connections + /// originated from a remote source and terminated by the L7 proxy. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminatingTLS")] pub terminating_tls: Option, } -/// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. +/// listener specifies the name of a custom Envoy listener to which this traffic should be +/// redirected to. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsListener { - /// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. + /// EnvoyConfig is a reference to the CEC or CCEC resource in which + /// the listener is defined. #[serde(rename = "envoyConfig")] pub envoy_config: CiliumNetworkPolicyIngressToPortsListenerEnvoyConfig, /// Name is the name of the listener. pub name: String, - /// Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent. + /// Priority for this Listener that is used when multiple rules would apply different + /// listeners to a policy map entry. Behavior of this is implementation dependent. #[serde(default, skip_serializing_if = "Option::is_none")] pub priority: Option, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsListenerEnvoyConfig { - /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed. + /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or + /// CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, + /// respectively. The only case this is currently explicitly needed is when referring to a + /// CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener + /// from a cluster scoped policy is not allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in. + /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where + /// the listener is defined in. pub name: String, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyIngressToPortsListenerEnvoyConfigKind { CiliumEnvoyConfig, CiliumClusterwideEnvoyConfig, } -/// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. +/// OriginatingTLS is the TLS context for the connections originated by +/// the L7 proxy. For egress policy this specifies the client-side TLS +/// parameters for the upstream connection originating from the L7 proxy +/// to the remote destination. For ingress policy this specifies the +/// client-side TLS parameters for the connection from the L7 proxy to +/// the local endpoint. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsOriginatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumNetworkPolicyIngressToPortsOriginatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsOriginatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -1271,11 +1940,16 @@ pub struct CiliumNetworkPolicyIngressToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -1293,7 +1967,9 @@ pub enum CiliumNetworkPolicyIngressToPortsPortsProtocol { Any, } -/// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. +/// Rules is a list of additional port level rules which must be met in +/// order for the PortRule to allow the traffic. If omitted or empty, +/// no layer 7 rules are enforced. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsRules { /// DNS-specific rules. @@ -1316,57 +1992,105 @@ pub struct CiliumNetworkPolicyIngressToPortsRules { /// PortRuleDNS is a list of allowed DNS lookups. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsRulesDns { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. -/// All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. +/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule does not have any +/// effect. +/// +/// All fields of this type are extended POSIX regex as defined by IEEE Std +/// 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) +/// matched against the path of an incoming request. Currently it can contain +/// characters disallowed from the conventional "path" part of a URL as defined +/// by RFC 3986. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsRulesHttp { - /// HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match. + /// HeaderMatches is a list of HTTP headers which must be + /// present and match against the given values. Mismatch field can be used + /// to specify what to do when there is no match. #[serde(default, skip_serializing_if = "Option::is_none", rename = "headerMatches")] pub header_matches: Option>, - /// Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present. + /// Headers is a list of HTTP headers which must be present in the + /// request. If omitted or empty, requests are allowed regardless of + /// headers present. #[serde(default, skip_serializing_if = "Option::is_none")] pub headers: Option>, - /// Host is an extended POSIX regex matched against the host header of a request. Examples: - /// - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\.bar\.com will only match the host foo.bar.com - /// If omitted or empty, the value of the host header is ignored. + /// Host is an extended POSIX regex matched against the host header of a + /// request. Examples: + /// + /// - foo.bar.com will match the host fooXbar.com or foo-bar.com + /// - foo\.bar\.com will only match the host foo.bar.com + /// + /// If omitted or empty, the value of the host header is ignored. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Method is an extended POSIX regex matched against the method of a request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... - /// If omitted or empty, all methods are allowed. + /// Method is an extended POSIX regex matched against the method of a + /// request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... + /// + /// If omitted or empty, all methods are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub method: Option, - /// Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. - /// If omitted or empty, all paths are all allowed. + /// Path is an extended POSIX regex matched against the path of a + /// request. Currently it can contain characters disallowed from the + /// conventional "path" part of a URL as defined by RFC 3986. + /// + /// If omitted or empty, all paths are all allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsRulesHttpHeaderMatches { - /// Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log. + /// Mismatch identifies what to do in case there is no match. The default is + /// to drop the request. Otherwise the overall rule is still considered as + /// matching, but the mismatches are logged in the access log. #[serde(default, skip_serializing_if = "Option::is_none")] pub mismatch: Option, /// Name identifies the header. pub name: String, - /// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. + /// Secret refers to a secret that contains the value to be matched against. + /// The secret must only contain one entry. If the referred secret does not + /// exist, and there is no "Value" specified, the match will fail. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, - /// Value matches the exact value of the header. Can be specified either alone or together with "Secret"; will be used as the header value if the secret can not be found in the latter case. + /// Value matches the exact value of the header. Can be specified either + /// alone or together with "Secret"; will be used as the header value if the + /// secret can not be found in the latter case. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyIngressToPortsRulesHttpHeaderMatchesMismatch { #[serde(rename = "LOG")] @@ -1379,47 +2103,89 @@ pub enum CiliumNetworkPolicyIngressToPortsRulesHttpHeaderMatchesMismatch { Replace, } -/// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. +/// Secret refers to a secret that contains the value to be matched against. +/// The secret must only contain one entry. If the referred secret does not +/// exist, and there is no "Value" specified, the match will fail. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsRulesHttpHeaderMatchesSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsRulesKafka { - /// APIKey is a case-insensitive string matched against the key of a request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys - /// If omitted or empty, and if Role is not specified, then all keys are allowed. + /// APIKey is a case-insensitive string matched against the key of a + /// request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al + /// Reference: https://kafka.apache.org/protocol#protocol_api_keys + /// + /// If omitted or empty, and if Role is not specified, then all keys are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiKey")] pub api_key: Option, - /// APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. - /// If omitted or empty, all versions are allowed. + /// APIVersion is the version matched against the api version of the + /// Kafka message. If set, it has to be a string representing a positive + /// integer. + /// + /// If omitted or empty, all versions are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] pub api_version: Option, - /// ClientID is the client identifier as provided in the request. - /// From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. - /// If omitted or empty, all client identifiers are allowed. + /// ClientID is the client identifier as provided in the request. + /// + /// From Kafka protocol documentation: + /// This is a user supplied identifier for the client application. The + /// user can use any identifier they like and it will be used when + /// logging errors, monitoring aggregates, etc. For example, one might + /// want to monitor not just the requests per second overall, but the + /// number coming from each client application (each of which could + /// reside on multiple servers). This id acts as a logical grouping + /// across all requests from a particular client. + /// + /// If omitted or empty, all client identifiers are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "clientID")] pub client_id: Option, - /// Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as "produce" or "consume". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. - /// The following values are supported: - "produce": Allow producing to the topics specified in the rule - "consume": Allow consuming from the topics specified in the rule - /// This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. - /// If omitted or empty, and if APIKey is not specified, then all keys are allowed. + /// Role is a case-insensitive string and describes a group of API keys + /// necessary to perform certain higher-level Kafka operations such as "produce" + /// or "consume". A Role automatically expands into all APIKeys required + /// to perform the specified higher-level operation. + /// + /// The following values are supported: + /// - "produce": Allow producing to the topics specified in the rule + /// - "consume": Allow consuming from the topics specified in the rule + /// + /// This field is incompatible with the APIKey field, i.e APIKey and Role + /// cannot both be specified in the same rule. + /// + /// If omitted or empty, and if APIKey is not specified, then all keys are + /// allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub role: Option, - /// Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. - /// This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. - /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. - /// If omitted or empty, all topics are allowed. + /// Topic is the topic name contained in the message. If a Kafka request + /// contains multiple topics, then all topics must be allowed or the + /// message will be rejected. + /// + /// This constraint is ignored if the matched request message type + /// doesn't contain any topic. Maximum size of Topic can be 249 + /// characters as per recent Kafka spec and allowed characters are + /// a-z, A-Z, 0-9, -, . and _. + /// + /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 + /// version the length was changed from 255 to 249. For compatibility + /// reasons we are using 255. + /// + /// If omitted or empty, all topics are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub topic: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyIngressToPortsRulesKafkaRole { #[serde(rename = "produce")] @@ -1428,84 +2194,180 @@ pub enum CiliumNetworkPolicyIngressToPortsRulesKafkaRole { Consume, } -/// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. +/// TerminatingTLS is the TLS context for the connection terminated by +/// the L7 proxy. For egress policy this specifies the server-side TLS +/// parameters to be applied on the connections originated from the local +/// endpoint and terminated by the L7 proxy. For ingress policy this specifies +/// the server-side TLS parameters to be applied on the connections +/// originated from a remote source and terminated by the L7 proxy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsTerminatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumNetworkPolicyIngressToPortsTerminatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressToPortsTerminatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// IngressDenyRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. -/// - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule. +/// IngressDenyRule contains all rule types which can be applied at ingress, +/// i.e. network traffic that originates outside of the endpoint and +/// is entering the endpoint selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members are set, all of them need to match in order for +/// the rule to take effect. The exception to this rule is FromRequires field; +/// the effects of any Requires field in any rule will apply to all other +/// rules as well. +/// +/// - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually +/// exclusive. Only one of these members may be present within an individual +/// rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressDeny { - /// FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.3.9.1 + /// FromCIDR is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from. Only connections which + /// do *not* originate from the cluster or from the local host are subject + /// to CIDR rules. In order to allow in-cluster connectivity, use the + /// FromEndpoints field. This will match on the source IP address of + /// incoming connections. Adding a prefix into FromCIDR or into + /// FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are + /// allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.3.9.1 #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDR")] pub from_cidr: Option>, - /// FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. + /// FromCIDRSet is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from in addition to FromEndpoints, + /// along with a list of subnets contained within their corresponding IP block + /// from which traffic should not be allowed. + /// This will match on the source IP address of incoming connections. Adding + /// a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is + /// equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDRSet")] pub from_cidr_set: Option>, - /// FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. - /// Example: Any endpoint with the label "role=backend" can be consumed by any endpoint carrying the label "role=frontend". + /// FromEndpoints is a list of endpoints identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. + /// + /// Example: + /// Any endpoint with the label "role=backend" can be consumed by any + /// endpoint carrying the label "role=frontend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEndpoints")] pub from_endpoints: Option>, - /// FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host` + /// FromEntities is a list of special entities which the endpoint subject + /// to the rule is allowed to receive connections from. Supported entities are + /// `world`, `cluster` and `host` #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEntities")] pub from_entities: Option>, - /// FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// FromGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// FromGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromGroups")] pub from_groups: Option>, - /// FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. + /// FromNodes is a list of nodes identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromNodes")] pub from_nodes: Option>, - /// FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. - /// Example: Any Endpoint with the label "team=A" requires consuming endpoint to also carry the label "team=A". + /// FromRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be reachable. These + /// additional constraints do no by itself grant access privileges and + /// must always be accompanied with at least one matching FromEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires consuming endpoint + /// to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromRequires")] pub from_requires: Option>, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can not accept incoming type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is not allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can not accept incoming + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can not accept incoming connections on port 80/tcp. + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is not allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can not accept incoming + /// connections on port 80/tcp. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressDenyFromCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -1516,24 +2378,32 @@ pub struct CiliumNetworkPolicyIngressDenyFromEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyIngressDenyFromEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyIngressDenyFromEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyIngressDenyFromEndpointsMatchExpressionsOperator { In, @@ -1542,7 +2412,8 @@ pub enum CiliumNetworkPolicyIngressDenyFromEndpointsMatchExpressionsOperator { DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressDenyFromGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -1569,24 +2440,32 @@ pub struct CiliumNetworkPolicyIngressDenyFromNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyIngressDenyFromNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyIngressDenyFromNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyIngressDenyFromNodesMatchExpressionsOperator { In, @@ -1601,24 +2480,32 @@ pub struct CiliumNetworkPolicyIngressDenyFromRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyIngressDenyFromRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyIngressDenyFromRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyIngressDenyFromRequiresMatchExpressionsOperator { In, @@ -1638,10 +2525,25 @@ pub struct CiliumNetworkPolicyIngressDenyIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressDenyIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -1653,7 +2555,9 @@ pub enum CiliumNetworkPolicyIngressDenyIcmpsFieldsFamily { IPv6, } -/// PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies. +/// PortDenyRule is a list of ports/protocol that should be used for deny +/// policies. This structure lacks the L7Rules since it's not supported in deny +/// policies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyIngressDenyToPorts { /// Ports is a list of L4 port/protocol @@ -1667,11 +2571,16 @@ pub struct CiliumNetworkPolicyIngressDenyToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -1700,30 +2609,40 @@ pub struct CiliumNetworkPolicyLabels { pub value: Option, } -/// NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies. +/// NodeSelector selects all nodes which should be subject to this rule. +/// EndpointSelector and NodeSelector cannot be both empty and are mutually +/// exclusive. Can only be used in CiliumClusterwideNetworkPolicies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyNodeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicyNodeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicyNodeSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicyNodeSelectorMatchExpressionsOperator { In, @@ -1732,91 +2651,206 @@ pub enum CiliumNetworkPolicyNodeSelectorMatchExpressionsOperator { DoesNotExist, } -/// Rule is a policy rule which must be applied to all endpoints which match the labels contained in the endpointSelector -/// Each rule is split into an ingress section which contains all rules applicable at ingress, and an egress section applicable at egress. For rule types such as `L4Rule` and `CIDR` which can be applied at both ingress and egress, both ingress and egress side have to either specifically allow the connection or one side has to be omitted. -/// Either ingress, egress, or both can be provided. If both ingress and egress are omitted, the rule has no effect. +/// Rule is a policy rule which must be applied to all endpoints which match the +/// labels contained in the endpointSelector +/// +/// Each rule is split into an ingress section which contains all rules +/// applicable at ingress, and an egress section applicable at egress. For rule +/// types such as `L4Rule` and `CIDR` which can be applied at both ingress and +/// egress, both ingress and egress side have to either specifically allow the +/// connection or one side has to be omitted. +/// +/// Either ingress, egress, or both can be provided. If both ingress and egress +/// are omitted, the rule has no effect. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicys { - /// Description is a free form string, it can be used by the creator of the rule to store human readable explanation of the purpose of this rule. Rules cannot be identified by comment. + /// Description is a free form string, it can be used by the creator of + /// the rule to store human readable explanation of the purpose of this + /// rule. Rules cannot be identified by comment. #[serde(default, skip_serializing_if = "Option::is_none")] pub description: Option, - /// Egress is a list of EgressRule which are enforced at egress. If omitted or empty, this rule does not apply at egress. + /// Egress is a list of EgressRule which are enforced at egress. + /// If omitted or empty, this rule does not apply at egress. #[serde(default, skip_serializing_if = "Option::is_none")] pub egress: Option>, - /// EgressDeny is a list of EgressDenyRule which are enforced at egress. Any rule inserted here will be denied regardless of the allowed egress rules in the 'egress' field. If omitted or empty, this rule does not apply at egress. + /// EgressDeny is a list of EgressDenyRule which are enforced at egress. + /// Any rule inserted here will be denied regardless of the allowed egress + /// rules in the 'egress' field. + /// If omitted or empty, this rule does not apply at egress. #[serde(default, skip_serializing_if = "Option::is_none", rename = "egressDeny")] pub egress_deny: Option>, - /// EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. - /// If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. - /// If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. - /// This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode. + /// EnableDefaultDeny determines whether this policy configures the + /// subject endpoint(s) to have a default deny mode. If enabled, + /// this causes all traffic not explicitly allowed by a network policy + /// to be dropped. + /// + /// If not specified, the default is true for each traffic direction + /// that has rules, and false otherwise. For example, if a policy + /// only has Ingress or IngressDeny rules, then the default for + /// ingress is true and egress is false. + /// + /// If multiple policies apply to an endpoint, that endpoint's default deny + /// will be enabled if any policy requests it. + /// + /// This is useful for creating broad-based network policies that will not + /// cause endpoints to enter default-deny mode. #[serde(default, skip_serializing_if = "Option::is_none", rename = "enableDefaultDeny")] pub enable_default_deny: Option, - /// EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. + /// EndpointSelector selects all endpoints which should be subject to + /// this rule. EndpointSelector and NodeSelector cannot be both empty and + /// are mutually exclusive. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endpointSelector")] pub endpoint_selector: Option, - /// Ingress is a list of IngressRule which are enforced at ingress. If omitted or empty, this rule does not apply at ingress. + /// Ingress is a list of IngressRule which are enforced at ingress. + /// If omitted or empty, this rule does not apply at ingress. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingress: Option>, - /// IngressDeny is a list of IngressDenyRule which are enforced at ingress. Any rule inserted here will be denied regardless of the allowed ingress rules in the 'ingress' field. If omitted or empty, this rule does not apply at ingress. + /// IngressDeny is a list of IngressDenyRule which are enforced at ingress. + /// Any rule inserted here will be denied regardless of the allowed ingress + /// rules in the 'ingress' field. + /// If omitted or empty, this rule does not apply at ingress. #[serde(default, skip_serializing_if = "Option::is_none", rename = "ingressDeny")] pub ingress_deny: Option>, - /// Labels is a list of optional strings which can be used to re-identify the rule or to store metadata. It is possible to lookup or delete strings based on labels. Labels are not required to be unique, multiple rules can have overlapping or identical labels. + /// Labels is a list of optional strings which can be used to + /// re-identify the rule or to store metadata. It is possible to lookup + /// or delete strings based on labels. Labels are not required to be + /// unique, multiple rules can have overlapping or identical labels. #[serde(default, skip_serializing_if = "Option::is_none")] pub labels: Option>, - /// NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies. + /// NodeSelector selects all nodes which should be subject to this rule. + /// EndpointSelector and NodeSelector cannot be both empty and are mutually + /// exclusive. Can only be used in CiliumClusterwideNetworkPolicies. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeSelector")] pub node_selector: Option, } -/// EgressRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. -/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule. +/// EgressRule contains all rule types which can be applied at egress, i.e. +/// network traffic that originates inside the endpoint and exits the endpoint +/// selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members of the structure are specified, then all members +/// must match in order for the rule to take effect. The exception to this +/// rule is the ToRequires member; the effects of any Requires field in any +/// rule will apply to all other rules as well. +/// +/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are +/// mutually exclusive. Only one of these members may be present within an +/// individual rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgress { /// Authentication is the required authentication type for the allowed traffic, if any. #[serde(default, skip_serializing_if = "Option::is_none")] pub authentication: Option, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to connect to. - /// Example: Any endpoint with the label "app=httpd" is allowed to initiate type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is allowed to connect to. + /// + /// Example: + /// Any endpoint with the label "app=httpd" is allowed to initiate + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 + /// ToCIDR is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections. Only connections destined for + /// outside of the cluster and not targeting the host will be subject + /// to CIDR rules. This will match on the destination IP address of + /// outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet + /// with no ExcludeCIDRs is equivalent. Overlaps are allowed between + /// ToCIDR and ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDR")] pub to_cidr: Option>, - /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. + /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections to in addition to connections + /// which are allowed via ToEndpoints, along with a list of subnets contained + /// within their corresponding IP block to which traffic should not be + /// allowed. This will match on the destination IP address of outgoing + /// connections. Adding a prefix into ToCIDR or into ToCIDRSet with no + /// ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and + /// ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDRSet")] pub to_cidr_set: Option>, - /// ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. - /// Example: Any endpoint with the label "role=frontend" can communicate with any endpoint carrying the label "role=backend". + /// ToEndpoints is a list of endpoints identified by an EndpointSelector to + /// which the endpoints subject to the rule are allowed to communicate. + /// + /// Example: + /// Any endpoint with the label "role=frontend" can communicate with any + /// endpoint carrying the label "role=backend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEndpoints")] pub to_endpoints: Option>, - /// ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`. + /// ToEntities is a list of special entities to which the endpoint subject + /// to the rule is allowed to initiate connections. Supported entities are + /// `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, + /// `health`,`unmanaged` and `all`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEntities")] pub to_entities: Option>, - /// ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result from DNS resolution of `ToFQDN.MatchName`s are added to the same EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and L7 rules within this EgressRule will also apply to these IPs. The DNS -> IP mapping is re-resolved periodically from within the cilium-agent, and the IPs in the DNS response are effected in the policy for selected pods as-is (i.e. the list of IPs is not modified in any way). Note: An explicit rule to allow for DNS traffic is needed for the pods, as ToFQDN counts as an egress rule and will enforce egress policy when PolicyEnforcment=default. Note: If the resolved IPs are IPs within the kubernetes cluster, the ToFQDN rule will not apply to that IP. Note: ToFQDN cannot occur in the same policy as other To* rules. + /// ToFQDN allows whitelisting DNS names in place of IPs. The IPs that result + /// from DNS resolution of `ToFQDN.MatchName`s are added to the same + /// EgressRule object as ToCIDRSet entries, and behave accordingly. Any L4 and + /// L7 rules within this EgressRule will also apply to these IPs. + /// The DNS -> IP mapping is re-resolved periodically from within the + /// cilium-agent, and the IPs in the DNS response are effected in the policy + /// for selected pods as-is (i.e. the list of IPs is not modified in any way). + /// Note: An explicit rule to allow for DNS traffic is needed for the pods, as + /// ToFQDN counts as an egress rule and will enforce egress policy when + /// PolicyEnforcment=default. + /// Note: If the resolved IPs are IPs within the kubernetes cluster, the + /// ToFQDN rule will not apply to that IP. + /// Note: ToFQDN cannot occur in the same policy as other To* rules. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toFQDNs")] pub to_fqd_ns: Option>, - /// ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// ToGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// toGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "toGroups")] pub to_groups: Option>, - /// ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate. + /// ToNodes is a list of nodes identified by an + /// EndpointSelector to which endpoints subject to the rule is allowed to communicate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toNodes")] pub to_nodes: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to connect to. - /// Example: Any endpoint with the label "role=frontend" is allowed to initiate connections to destination port 8080/tcp + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is allowed to + /// connect to. + /// + /// Example: + /// Any endpoint with the label "role=frontend" is allowed to initiate + /// connections to destination port 8080/tcp #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, - /// ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. - /// Example: Any Endpoint with the label "team=A" requires any endpoint to which it communicates to also carry the label "team=A". + /// ToRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be able to connect to other + /// endpoints. These additional constraints do no by itself grant access + /// privileges and must always be accompanied with at least one matching + /// ToEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires any endpoint to which it + /// communicates to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toRequires")] pub to_requires: Option>, - /// ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. - /// Example: Any endpoint with the label "app=backend-app" is allowed to initiate connections to all cidrs backing the "external-service" service + /// ToServices is a list of services to which the endpoint subject + /// to the rule is allowed to initiate connections. + /// Currently Cilium only supports toServices for K8s services without + /// selectors. + /// + /// Example: + /// Any endpoint with the label "app=backend-app" is allowed to + /// initiate connections to all cidrs backing the "external-service" service #[serde(default, skip_serializing_if = "Option::is_none", rename = "toServices")] pub to_services: Option>, } @@ -1850,10 +2884,25 @@ pub struct CiliumNetworkPolicysEgressIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -1865,16 +2914,26 @@ pub enum CiliumNetworkPolicysEgressIcmpsFieldsFamily { IPv6, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -1885,24 +2944,32 @@ pub struct CiliumNetworkPolicysEgressToEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysEgressToEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysEgressToEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressToEndpointsMatchExpressionsOperator { In, @@ -1913,16 +2980,33 @@ pub enum CiliumNetworkPolicysEgressToEndpointsMatchExpressionsOperator { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToFqdNs { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -1949,24 +3033,32 @@ pub struct CiliumNetworkPolicysEgressToNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysEgressToNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysEgressToNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressToNodesMatchExpressionsOperator { In, @@ -1975,81 +3067,131 @@ pub enum CiliumNetworkPolicysEgressToNodesMatchExpressionsOperator { DoesNotExist, } -/// PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met. +/// PortRule is a list of ports/protocol combinations with optional Layer 7 +/// rules which must be met. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPorts { - /// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. + /// listener specifies the name of a custom Envoy listener to which this traffic should be + /// redirected to. #[serde(default, skip_serializing_if = "Option::is_none")] pub listener: Option, - /// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. + /// OriginatingTLS is the TLS context for the connections originated by + /// the L7 proxy. For egress policy this specifies the client-side TLS + /// parameters for the upstream connection originating from the L7 proxy + /// to the remote destination. For ingress policy this specifies the + /// client-side TLS parameters for the connection from the L7 proxy to + /// the local endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "originatingTLS")] pub originating_tls: Option, /// Ports is a list of L4 port/protocol #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. + /// Rules is a list of additional port level rules which must be met in + /// order for the PortRule to allow the traffic. If omitted or empty, + /// no layer 7 rules are enforced. #[serde(default, skip_serializing_if = "Option::is_none")] pub rules: Option, - /// ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake. + /// ServerNames is a list of allowed TLS SNI values. If not empty, then + /// TLS must be present and one of the provided SNIs must be indicated in the + /// TLS handshake. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serverNames")] pub server_names: Option>, - /// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. + /// TerminatingTLS is the TLS context for the connection terminated by + /// the L7 proxy. For egress policy this specifies the server-side TLS + /// parameters to be applied on the connections originated from the local + /// endpoint and terminated by the L7 proxy. For ingress policy this specifies + /// the server-side TLS parameters to be applied on the connections + /// originated from a remote source and terminated by the L7 proxy. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminatingTLS")] pub terminating_tls: Option, } -/// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. +/// listener specifies the name of a custom Envoy listener to which this traffic should be +/// redirected to. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsListener { - /// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. + /// EnvoyConfig is a reference to the CEC or CCEC resource in which + /// the listener is defined. #[serde(rename = "envoyConfig")] pub envoy_config: CiliumNetworkPolicysEgressToPortsListenerEnvoyConfig, /// Name is the name of the listener. pub name: String, - /// Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent. + /// Priority for this Listener that is used when multiple rules would apply different + /// listeners to a policy map entry. Behavior of this is implementation dependent. #[serde(default, skip_serializing_if = "Option::is_none")] pub priority: Option, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsListenerEnvoyConfig { - /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed. + /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or + /// CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, + /// respectively. The only case this is currently explicitly needed is when referring to a + /// CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener + /// from a cluster scoped policy is not allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in. + /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where + /// the listener is defined in. pub name: String, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressToPortsListenerEnvoyConfigKind { CiliumEnvoyConfig, CiliumClusterwideEnvoyConfig, } -/// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. +/// OriginatingTLS is the TLS context for the connections originated by +/// the L7 proxy. For egress policy this specifies the client-side TLS +/// parameters for the upstream connection originating from the L7 proxy +/// to the remote destination. For ingress policy this specifies the +/// client-side TLS parameters for the connection from the L7 proxy to +/// the local endpoint. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsOriginatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumNetworkPolicysEgressToPortsOriginatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsOriginatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -2060,11 +3202,16 @@ pub struct CiliumNetworkPolicysEgressToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -2082,7 +3229,9 @@ pub enum CiliumNetworkPolicysEgressToPortsPortsProtocol { Any, } -/// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. +/// Rules is a list of additional port level rules which must be met in +/// order for the PortRule to allow the traffic. If omitted or empty, +/// no layer 7 rules are enforced. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsRules { /// DNS-specific rules. @@ -2105,57 +3254,105 @@ pub struct CiliumNetworkPolicysEgressToPortsRules { /// PortRuleDNS is a list of allowed DNS lookups. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsRulesDns { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. -/// All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. +/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule does not have any +/// effect. +/// +/// All fields of this type are extended POSIX regex as defined by IEEE Std +/// 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) +/// matched against the path of an incoming request. Currently it can contain +/// characters disallowed from the conventional "path" part of a URL as defined +/// by RFC 3986. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsRulesHttp { - /// HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match. + /// HeaderMatches is a list of HTTP headers which must be + /// present and match against the given values. Mismatch field can be used + /// to specify what to do when there is no match. #[serde(default, skip_serializing_if = "Option::is_none", rename = "headerMatches")] pub header_matches: Option>, - /// Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present. + /// Headers is a list of HTTP headers which must be present in the + /// request. If omitted or empty, requests are allowed regardless of + /// headers present. #[serde(default, skip_serializing_if = "Option::is_none")] pub headers: Option>, - /// Host is an extended POSIX regex matched against the host header of a request. Examples: - /// - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\.bar\.com will only match the host foo.bar.com - /// If omitted or empty, the value of the host header is ignored. + /// Host is an extended POSIX regex matched against the host header of a + /// request. Examples: + /// + /// - foo.bar.com will match the host fooXbar.com or foo-bar.com + /// - foo\.bar\.com will only match the host foo.bar.com + /// + /// If omitted or empty, the value of the host header is ignored. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Method is an extended POSIX regex matched against the method of a request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... - /// If omitted or empty, all methods are allowed. + /// Method is an extended POSIX regex matched against the method of a + /// request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... + /// + /// If omitted or empty, all methods are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub method: Option, - /// Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. - /// If omitted or empty, all paths are all allowed. + /// Path is an extended POSIX regex matched against the path of a + /// request. Currently it can contain characters disallowed from the + /// conventional "path" part of a URL as defined by RFC 3986. + /// + /// If omitted or empty, all paths are all allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsRulesHttpHeaderMatches { - /// Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log. + /// Mismatch identifies what to do in case there is no match. The default is + /// to drop the request. Otherwise the overall rule is still considered as + /// matching, but the mismatches are logged in the access log. #[serde(default, skip_serializing_if = "Option::is_none")] pub mismatch: Option, /// Name identifies the header. pub name: String, - /// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. + /// Secret refers to a secret that contains the value to be matched against. + /// The secret must only contain one entry. If the referred secret does not + /// exist, and there is no "Value" specified, the match will fail. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, - /// Value matches the exact value of the header. Can be specified either alone or together with "Secret"; will be used as the header value if the secret can not be found in the latter case. + /// Value matches the exact value of the header. Can be specified either + /// alone or together with "Secret"; will be used as the header value if the + /// secret can not be found in the latter case. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressToPortsRulesHttpHeaderMatchesMismatch { #[serde(rename = "LOG")] @@ -2168,47 +3365,89 @@ pub enum CiliumNetworkPolicysEgressToPortsRulesHttpHeaderMatchesMismatch { Replace, } -/// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. +/// Secret refers to a secret that contains the value to be matched against. +/// The secret must only contain one entry. If the referred secret does not +/// exist, and there is no "Value" specified, the match will fail. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsRulesHttpHeaderMatchesSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsRulesKafka { - /// APIKey is a case-insensitive string matched against the key of a request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys - /// If omitted or empty, and if Role is not specified, then all keys are allowed. + /// APIKey is a case-insensitive string matched against the key of a + /// request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al + /// Reference: https://kafka.apache.org/protocol#protocol_api_keys + /// + /// If omitted or empty, and if Role is not specified, then all keys are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiKey")] pub api_key: Option, - /// APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. - /// If omitted or empty, all versions are allowed. + /// APIVersion is the version matched against the api version of the + /// Kafka message. If set, it has to be a string representing a positive + /// integer. + /// + /// If omitted or empty, all versions are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] pub api_version: Option, - /// ClientID is the client identifier as provided in the request. - /// From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. - /// If omitted or empty, all client identifiers are allowed. + /// ClientID is the client identifier as provided in the request. + /// + /// From Kafka protocol documentation: + /// This is a user supplied identifier for the client application. The + /// user can use any identifier they like and it will be used when + /// logging errors, monitoring aggregates, etc. For example, one might + /// want to monitor not just the requests per second overall, but the + /// number coming from each client application (each of which could + /// reside on multiple servers). This id acts as a logical grouping + /// across all requests from a particular client. + /// + /// If omitted or empty, all client identifiers are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "clientID")] pub client_id: Option, - /// Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as "produce" or "consume". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. - /// The following values are supported: - "produce": Allow producing to the topics specified in the rule - "consume": Allow consuming from the topics specified in the rule - /// This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. - /// If omitted or empty, and if APIKey is not specified, then all keys are allowed. + /// Role is a case-insensitive string and describes a group of API keys + /// necessary to perform certain higher-level Kafka operations such as "produce" + /// or "consume". A Role automatically expands into all APIKeys required + /// to perform the specified higher-level operation. + /// + /// The following values are supported: + /// - "produce": Allow producing to the topics specified in the rule + /// - "consume": Allow consuming from the topics specified in the rule + /// + /// This field is incompatible with the APIKey field, i.e APIKey and Role + /// cannot both be specified in the same rule. + /// + /// If omitted or empty, and if APIKey is not specified, then all keys are + /// allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub role: Option, - /// Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. - /// This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. - /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. - /// If omitted or empty, all topics are allowed. + /// Topic is the topic name contained in the message. If a Kafka request + /// contains multiple topics, then all topics must be allowed or the + /// message will be rejected. + /// + /// This constraint is ignored if the matched request message type + /// doesn't contain any topic. Maximum size of Topic can be 249 + /// characters as per recent Kafka spec and allowed characters are + /// a-z, A-Z, 0-9, -, . and _. + /// + /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 + /// version the length was changed from 255 to 249. For compatibility + /// reasons we are using 255. + /// + /// If omitted or empty, all topics are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub topic: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressToPortsRulesKafkaRole { #[serde(rename = "produce")] @@ -2217,28 +3456,52 @@ pub enum CiliumNetworkPolicysEgressToPortsRulesKafkaRole { Consume, } -/// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. +/// TerminatingTLS is the TLS context for the connection terminated by +/// the L7 proxy. For egress policy this specifies the server-side TLS +/// parameters to be applied on the connections originated from the local +/// endpoint and terminated by the L7 proxy. For ingress policy this specifies +/// the server-side TLS parameters to be applied on the connections +/// originated from a remote source and terminated by the L7 proxy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsTerminatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumNetworkPolicysEgressToPortsTerminatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressToPortsTerminatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -2249,24 +3512,32 @@ pub struct CiliumNetworkPolicysEgressToRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysEgressToRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysEgressToRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressToRequiresMatchExpressionsOperator { In, @@ -2310,24 +3581,32 @@ pub struct CiliumNetworkPolicysEgressToServicesK8sServiceSelectorSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysEgressToServicesK8sServiceSelectorSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysEgressToServicesK8sServiceSelectorSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressToServicesK8sServiceSelectorSelectorMatchExpressionsOperator { In, @@ -2336,48 +3615,115 @@ pub enum CiliumNetworkPolicysEgressToServicesK8sServiceSelectorSelectorMatchExpr DoesNotExist, } -/// EgressDenyRule contains all rule types which can be applied at egress, i.e. network traffic that originates inside the endpoint and exits the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members of the structure are specified, then all members must match in order for the rule to take effect. The exception to this rule is the ToRequires member; the effects of any Requires field in any rule will apply to all other rules as well. -/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are mutually exclusive. Only one of these members may be present within an individual rule. +/// EgressDenyRule contains all rule types which can be applied at egress, i.e. +/// network traffic that originates inside the endpoint and exits the endpoint +/// selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members of the structure are specified, then all members +/// must match in order for the rule to take effect. The exception to this +/// rule is the ToRequires member; the effects of any Requires field in any +/// rule will apply to all other rules as well. +/// +/// - ToEndpoints, ToCIDR, ToCIDRSet, ToEntities, ToServices and ToGroups are +/// mutually exclusive. Only one of these members may be present within an +/// individual rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressDeny { - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to connect to. - /// Example: Any endpoint with the label "app=httpd" is not allowed to initiate type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is not allowed to connect to. + /// + /// Example: + /// Any endpoint with the label "app=httpd" is not allowed to initiate + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections. Only connections destined for outside of the cluster and not targeting the host will be subject to CIDR rules. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 + /// ToCIDR is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections. Only connections destined for + /// outside of the cluster and not targeting the host will be subject + /// to CIDR rules. This will match on the destination IP address of + /// outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet + /// with no ExcludeCIDRs is equivalent. Overlaps are allowed between + /// ToCIDR and ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDR")] pub to_cidr: Option>, - /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to initiate connections to in addition to connections which are allowed via ToEndpoints, along with a list of subnets contained within their corresponding IP block to which traffic should not be allowed. This will match on the destination IP address of outgoing connections. Adding a prefix into ToCIDR or into ToCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and ToCIDRSet. - /// Example: Any endpoint with the label "app=database-proxy" is allowed to initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. + /// ToCIDRSet is a list of IP blocks which the endpoint subject to the rule + /// is allowed to initiate connections to in addition to connections + /// which are allowed via ToEndpoints, along with a list of subnets contained + /// within their corresponding IP block to which traffic should not be + /// allowed. This will match on the destination IP address of outgoing + /// connections. Adding a prefix into ToCIDR or into ToCIDRSet with no + /// ExcludeCIDRs is equivalent. Overlaps are allowed between ToCIDR and + /// ToCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=database-proxy" is allowed to + /// initiate connections to 10.2.3.0/24 except from IPs in subnet 10.2.3.0/28. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toCIDRSet")] pub to_cidr_set: Option>, - /// ToEndpoints is a list of endpoints identified by an EndpointSelector to which the endpoints subject to the rule are allowed to communicate. - /// Example: Any endpoint with the label "role=frontend" can communicate with any endpoint carrying the label "role=backend". + /// ToEndpoints is a list of endpoints identified by an EndpointSelector to + /// which the endpoints subject to the rule are allowed to communicate. + /// + /// Example: + /// Any endpoint with the label "role=frontend" can communicate with any + /// endpoint carrying the label "role=backend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEndpoints")] pub to_endpoints: Option>, - /// ToEntities is a list of special entities to which the endpoint subject to the rule is allowed to initiate connections. Supported entities are `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, `health`,`unmanaged` and `all`. + /// ToEntities is a list of special entities to which the endpoint subject + /// to the rule is allowed to initiate connections. Supported entities are + /// `world`, `cluster`,`host`,`remote-node`,`kube-apiserver`, `init`, + /// `health`,`unmanaged` and `all`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toEntities")] pub to_entities: Option>, - /// ToGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: toGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// ToGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// toGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "toGroups")] pub to_groups: Option>, - /// ToNodes is a list of nodes identified by an EndpointSelector to which endpoints subject to the rule is allowed to communicate. + /// ToNodes is a list of nodes identified by an + /// EndpointSelector to which endpoints subject to the rule is allowed to communicate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toNodes")] pub to_nodes: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to connect to. - /// Example: Any endpoint with the label "role=frontend" is not allowed to initiate connections to destination port 8080/tcp + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is not allowed to connect + /// to. + /// + /// Example: + /// Any endpoint with the label "role=frontend" is not allowed to initiate + /// connections to destination port 8080/tcp #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, - /// ToRequires is a list of additional constraints which must be met in order for the selected endpoints to be able to connect to other endpoints. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching ToEndpoints. - /// Example: Any Endpoint with the label "team=A" requires any endpoint to which it communicates to also carry the label "team=A". + /// ToRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be able to connect to other + /// endpoints. These additional constraints do no by itself grant access + /// privileges and must always be accompanied with at least one matching + /// ToEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires any endpoint to which it + /// communicates to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "toRequires")] pub to_requires: Option>, - /// ToServices is a list of services to which the endpoint subject to the rule is allowed to initiate connections. Currently Cilium only supports toServices for K8s services without selectors. - /// Example: Any endpoint with the label "app=backend-app" is allowed to initiate connections to all cidrs backing the "external-service" service + /// ToServices is a list of services to which the endpoint subject + /// to the rule is allowed to initiate connections. + /// Currently Cilium only supports toServices for K8s services without + /// selectors. + /// + /// Example: + /// Any endpoint with the label "app=backend-app" is allowed to + /// initiate connections to all cidrs backing the "external-service" service #[serde(default, skip_serializing_if = "Option::is_none", rename = "toServices")] pub to_services: Option>, } @@ -2393,10 +3739,25 @@ pub struct CiliumNetworkPolicysEgressDenyIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressDenyIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -2408,16 +3769,26 @@ pub enum CiliumNetworkPolicysEgressDenyIcmpsFieldsFamily { IPv6, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressDenyToCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -2428,24 +3799,32 @@ pub struct CiliumNetworkPolicysEgressDenyToEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysEgressDenyToEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysEgressDenyToEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressDenyToEndpointsMatchExpressionsOperator { In, @@ -2454,7 +3833,8 @@ pub enum CiliumNetworkPolicysEgressDenyToEndpointsMatchExpressionsOperator { DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressDenyToGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -2481,24 +3861,32 @@ pub struct CiliumNetworkPolicysEgressDenyToNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysEgressDenyToNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysEgressDenyToNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressDenyToNodesMatchExpressionsOperator { In, @@ -2507,7 +3895,9 @@ pub enum CiliumNetworkPolicysEgressDenyToNodesMatchExpressionsOperator { DoesNotExist, } -/// PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies. +/// PortDenyRule is a list of ports/protocol that should be used for deny +/// policies. This structure lacks the L7Rules since it's not supported in deny +/// policies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEgressDenyToPorts { /// Ports is a list of L4 port/protocol @@ -2521,11 +3911,16 @@ pub struct CiliumNetworkPolicysEgressDenyToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -2549,24 +3944,32 @@ pub struct CiliumNetworkPolicysEgressDenyToRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysEgressDenyToRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysEgressDenyToRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressDenyToRequiresMatchExpressionsOperator { In, @@ -2610,24 +4013,32 @@ pub struct CiliumNetworkPolicysEgressDenyToServicesK8sServiceSelectorSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEgressDenyToServicesK8sServiceSelectorSelectorMatchExpressionsOperator { In, @@ -2636,44 +4047,67 @@ pub enum CiliumNetworkPolicysEgressDenyToServicesK8sServiceSelectorSelectorMatch DoesNotExist, } -/// EnableDefaultDeny determines whether this policy configures the subject endpoint(s) to have a default deny mode. If enabled, this causes all traffic not explicitly allowed by a network policy to be dropped. -/// If not specified, the default is true for each traffic direction that has rules, and false otherwise. For example, if a policy only has Ingress or IngressDeny rules, then the default for ingress is true and egress is false. -/// If multiple policies apply to an endpoint, that endpoint's default deny will be enabled if any policy requests it. -/// This is useful for creating broad-based network policies that will not cause endpoints to enter default-deny mode. +/// EnableDefaultDeny determines whether this policy configures the +/// subject endpoint(s) to have a default deny mode. If enabled, +/// this causes all traffic not explicitly allowed by a network policy +/// to be dropped. +/// +/// If not specified, the default is true for each traffic direction +/// that has rules, and false otherwise. For example, if a policy +/// only has Ingress or IngressDeny rules, then the default for +/// ingress is true and egress is false. +/// +/// If multiple policies apply to an endpoint, that endpoint's default deny +/// will be enabled if any policy requests it. +/// +/// This is useful for creating broad-based network policies that will not +/// cause endpoints to enter default-deny mode. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEnableDefaultDeny { - /// Whether or not the endpoint should have a default-deny rule applied to egress traffic. + /// Whether or not the endpoint should have a default-deny rule applied + /// to egress traffic. #[serde(default, skip_serializing_if = "Option::is_none")] pub egress: Option, - /// Whether or not the endpoint should have a default-deny rule applied to ingress traffic. + /// Whether or not the endpoint should have a default-deny rule applied + /// to ingress traffic. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingress: Option, } -/// EndpointSelector selects all endpoints which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. +/// EndpointSelector selects all endpoints which should be subject to +/// this rule. EndpointSelector and NodeSelector cannot be both empty and +/// are mutually exclusive. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysEndpointSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysEndpointSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysEndpointSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysEndpointSelectorMatchExpressionsOperator { In, @@ -2682,47 +4116,109 @@ pub enum CiliumNetworkPolicysEndpointSelectorMatchExpressionsOperator { DoesNotExist, } -/// IngressRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. -/// - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule. +/// IngressRule contains all rule types which can be applied at ingress, +/// i.e. network traffic that originates outside of the endpoint and +/// is entering the endpoint selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members are set, all of them need to match in order for +/// the rule to take effect. The exception to this rule is FromRequires field; +/// the effects of any Requires field in any rule will apply to all other +/// rules as well. +/// +/// - FromEndpoints, FromCIDR, FromCIDRSet and FromEntities are mutually +/// exclusive. Only one of these members may be present within an individual +/// rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngress { /// Authentication is the required authentication type for the allowed traffic, if any. #[serde(default, skip_serializing_if = "Option::is_none")] pub authentication: Option, - /// FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.3.9.1 + /// FromCIDR is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from. Only connections which + /// do *not* originate from the cluster or from the local host are subject + /// to CIDR rules. In order to allow in-cluster connectivity, use the + /// FromEndpoints field. This will match on the source IP address of + /// incoming connections. Adding a prefix into FromCIDR or into + /// FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are + /// allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.3.9.1 #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDR")] pub from_cidr: Option>, - /// FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. + /// FromCIDRSet is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from in addition to FromEndpoints, + /// along with a list of subnets contained within their corresponding IP block + /// from which traffic should not be allowed. + /// This will match on the source IP address of incoming connections. Adding + /// a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is + /// equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDRSet")] pub from_cidr_set: Option>, - /// FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. - /// Example: Any endpoint with the label "role=backend" can be consumed by any endpoint carrying the label "role=frontend". + /// FromEndpoints is a list of endpoints identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. + /// + /// Example: + /// Any endpoint with the label "role=backend" can be consumed by any + /// endpoint carrying the label "role=frontend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEndpoints")] pub from_endpoints: Option>, - /// FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host` + /// FromEntities is a list of special entities which the endpoint subject + /// to the rule is allowed to receive connections from. Supported entities are + /// `world`, `cluster` and `host` #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEntities")] pub from_entities: Option>, - /// FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// FromGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// FromGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromGroups")] pub from_groups: Option>, - /// FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. + /// FromNodes is a list of nodes identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromNodes")] pub from_nodes: Option>, - /// FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. - /// Example: Any Endpoint with the label "team=A" requires consuming endpoint to also carry the label "team=A". + /// FromRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be reachable. These + /// additional constraints do no by itself grant access privileges and + /// must always be accompanied with at least one matching FromEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires consuming endpoint + /// to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromRequires")] pub from_requires: Option>, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can only accept incoming type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can only accept incoming + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can only accept incoming connections on port 80/tcp. + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can only accept incoming + /// connections on port 80/tcp. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, } @@ -2745,16 +4241,26 @@ pub enum CiliumNetworkPolicysIngressAuthenticationMode { TestAlwaysFail, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressFromCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -2765,24 +4271,32 @@ pub struct CiliumNetworkPolicysIngressFromEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysIngressFromEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysIngressFromEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysIngressFromEndpointsMatchExpressionsOperator { In, @@ -2791,7 +4305,8 @@ pub enum CiliumNetworkPolicysIngressFromEndpointsMatchExpressionsOperator { DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressFromGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -2818,24 +4333,32 @@ pub struct CiliumNetworkPolicysIngressFromNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysIngressFromNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysIngressFromNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysIngressFromNodesMatchExpressionsOperator { In, @@ -2850,24 +4373,32 @@ pub struct CiliumNetworkPolicysIngressFromRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysIngressFromRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysIngressFromRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysIngressFromRequiresMatchExpressionsOperator { In, @@ -2887,10 +4418,25 @@ pub struct CiliumNetworkPolicysIngressIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -2902,81 +4448,131 @@ pub enum CiliumNetworkPolicysIngressIcmpsFieldsFamily { IPv6, } -/// PortRule is a list of ports/protocol combinations with optional Layer 7 rules which must be met. +/// PortRule is a list of ports/protocol combinations with optional Layer 7 +/// rules which must be met. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPorts { - /// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. + /// listener specifies the name of a custom Envoy listener to which this traffic should be + /// redirected to. #[serde(default, skip_serializing_if = "Option::is_none")] pub listener: Option, - /// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. + /// OriginatingTLS is the TLS context for the connections originated by + /// the L7 proxy. For egress policy this specifies the client-side TLS + /// parameters for the upstream connection originating from the L7 proxy + /// to the remote destination. For ingress policy this specifies the + /// client-side TLS parameters for the connection from the L7 proxy to + /// the local endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "originatingTLS")] pub originating_tls: Option, /// Ports is a list of L4 port/protocol #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, - /// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. + /// Rules is a list of additional port level rules which must be met in + /// order for the PortRule to allow the traffic. If omitted or empty, + /// no layer 7 rules are enforced. #[serde(default, skip_serializing_if = "Option::is_none")] pub rules: Option, - /// ServerNames is a list of allowed TLS SNI values. If not empty, then TLS must be present and one of the provided SNIs must be indicated in the TLS handshake. + /// ServerNames is a list of allowed TLS SNI values. If not empty, then + /// TLS must be present and one of the provided SNIs must be indicated in the + /// TLS handshake. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serverNames")] pub server_names: Option>, - /// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. + /// TerminatingTLS is the TLS context for the connection terminated by + /// the L7 proxy. For egress policy this specifies the server-side TLS + /// parameters to be applied on the connections originated from the local + /// endpoint and terminated by the L7 proxy. For ingress policy this specifies + /// the server-side TLS parameters to be applied on the connections + /// originated from a remote source and terminated by the L7 proxy. #[serde(default, skip_serializing_if = "Option::is_none", rename = "terminatingTLS")] pub terminating_tls: Option, } -/// listener specifies the name of a custom Envoy listener to which this traffic should be redirected to. +/// listener specifies the name of a custom Envoy listener to which this traffic should be +/// redirected to. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsListener { - /// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. + /// EnvoyConfig is a reference to the CEC or CCEC resource in which + /// the listener is defined. #[serde(rename = "envoyConfig")] pub envoy_config: CiliumNetworkPolicysIngressToPortsListenerEnvoyConfig, /// Name is the name of the listener. pub name: String, - /// Priority for this Listener that is used when multiple rules would apply different listeners to a policy map entry. Behavior of this is implementation dependent. + /// Priority for this Listener that is used when multiple rules would apply different + /// listeners to a policy map entry. Behavior of this is implementation dependent. #[serde(default, skip_serializing_if = "Option::is_none")] pub priority: Option, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsListenerEnvoyConfig { - /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, respectively. The only case this is currently explicitly needed is when referring to a CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener from a cluster scoped policy is not allowed. + /// Kind is the resource type being referred to. Defaults to CiliumEnvoyConfig or + /// CiliumClusterwideEnvoyConfig for CiliumNetworkPolicy and CiliumClusterwideNetworkPolicy, + /// respectively. The only case this is currently explicitly needed is when referring to a + /// CiliumClusterwideEnvoyConfig from CiliumNetworkPolicy, as using a namespaced listener + /// from a cluster scoped policy is not allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub kind: Option, - /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where the listener is defined in. + /// Name is the resource name of the CiliumEnvoyConfig or CiliumClusterwideEnvoyConfig where + /// the listener is defined in. pub name: String, } -/// EnvoyConfig is a reference to the CEC or CCEC resource in which the listener is defined. +/// EnvoyConfig is a reference to the CEC or CCEC resource in which +/// the listener is defined. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysIngressToPortsListenerEnvoyConfigKind { CiliumEnvoyConfig, CiliumClusterwideEnvoyConfig, } -/// OriginatingTLS is the TLS context for the connections originated by the L7 proxy. For egress policy this specifies the client-side TLS parameters for the upstream connection originating from the L7 proxy to the remote destination. For ingress policy this specifies the client-side TLS parameters for the connection from the L7 proxy to the local endpoint. +/// OriginatingTLS is the TLS context for the connections originated by +/// the L7 proxy. For egress policy this specifies the client-side TLS +/// parameters for the upstream connection originating from the L7 proxy +/// to the remote destination. For ingress policy this specifies the +/// client-side TLS parameters for the connection from the L7 proxy to +/// the local endpoint. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsOriginatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumNetworkPolicysIngressToPortsOriginatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsOriginatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } @@ -2987,11 +4583,16 @@ pub struct CiliumNetworkPolicysIngressToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -3009,7 +4610,9 @@ pub enum CiliumNetworkPolicysIngressToPortsPortsProtocol { Any, } -/// Rules is a list of additional port level rules which must be met in order for the PortRule to allow the traffic. If omitted or empty, no layer 7 rules are enforced. +/// Rules is a list of additional port level rules which must be met in +/// order for the PortRule to allow the traffic. If omitted or empty, +/// no layer 7 rules are enforced. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsRules { /// DNS-specific rules. @@ -3032,57 +4635,105 @@ pub struct CiliumNetworkPolicysIngressToPortsRules { /// PortRuleDNS is a list of allowed DNS lookups. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsRulesDns { - /// MatchName matches literal DNS names. A trailing "." is automatically added when missing. + /// MatchName matches literal DNS names. A trailing "." is automatically added + /// when missing. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchName")] pub match_name: Option, - /// MatchPattern allows using wildcards to match DNS names. All wildcards are case insensitive. The wildcards are: - "*" matches 0 or more DNS valid characters, and may occur anywhere in the pattern. As a special case a "*" as the leftmost character, without a following "." matches all subdomains as well as the name to the right. A trailing "." is automatically added when missing. - /// Examples: `*.cilium.io` matches subomains of cilium at that level www.cilium.io and blog.cilium.io match, cilium.io and google.com do not `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" except those containing "." separator, subcilium.io and sub-cilium.io match, www.cilium.io and blog.cilium.io does not sub*.cilium.io matches subdomains of cilium where the subdomain component begins with "sub" sub.cilium.io and subdomain.cilium.io match, www.cilium.io, blog.cilium.io, cilium.io and google.com do not + /// MatchPattern allows using wildcards to match DNS names. All wildcards are + /// case insensitive. The wildcards are: + /// - "*" matches 0 or more DNS valid characters, and may occur anywhere in + /// the pattern. As a special case a "*" as the leftmost character, without a + /// following "." matches all subdomains as well as the name to the right. + /// A trailing "." is automatically added when missing. + /// + /// Examples: + /// `*.cilium.io` matches subomains of cilium at that level + /// www.cilium.io and blog.cilium.io match, cilium.io and google.com do not + /// `*cilium.io` matches cilium.io and all subdomains ends with "cilium.io" + /// except those containing "." separator, subcilium.io and sub-cilium.io match, + /// www.cilium.io and blog.cilium.io does not + /// sub*.cilium.io matches subdomains of cilium where the subdomain component + /// begins with "sub" + /// sub.cilium.io and subdomain.cilium.io match, www.cilium.io, + /// blog.cilium.io, cilium.io and google.com do not #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchPattern")] pub match_pattern: Option, } -/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are optional, if all fields are empty or missing, the rule does not have any effect. -/// All fields of this type are extended POSIX regex as defined by IEEE Std 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. +/// PortRuleHTTP is a list of HTTP protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule does not have any +/// effect. +/// +/// All fields of this type are extended POSIX regex as defined by IEEE Std +/// 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) +/// matched against the path of an incoming request. Currently it can contain +/// characters disallowed from the conventional "path" part of a URL as defined +/// by RFC 3986. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsRulesHttp { - /// HeaderMatches is a list of HTTP headers which must be present and match against the given values. Mismatch field can be used to specify what to do when there is no match. + /// HeaderMatches is a list of HTTP headers which must be + /// present and match against the given values. Mismatch field can be used + /// to specify what to do when there is no match. #[serde(default, skip_serializing_if = "Option::is_none", rename = "headerMatches")] pub header_matches: Option>, - /// Headers is a list of HTTP headers which must be present in the request. If omitted or empty, requests are allowed regardless of headers present. + /// Headers is a list of HTTP headers which must be present in the + /// request. If omitted or empty, requests are allowed regardless of + /// headers present. #[serde(default, skip_serializing_if = "Option::is_none")] pub headers: Option>, - /// Host is an extended POSIX regex matched against the host header of a request. Examples: - /// - foo.bar.com will match the host fooXbar.com or foo-bar.com - foo\.bar\.com will only match the host foo.bar.com - /// If omitted or empty, the value of the host header is ignored. + /// Host is an extended POSIX regex matched against the host header of a + /// request. Examples: + /// + /// - foo.bar.com will match the host fooXbar.com or foo-bar.com + /// - foo\.bar\.com will only match the host foo.bar.com + /// + /// If omitted or empty, the value of the host header is ignored. #[serde(default, skip_serializing_if = "Option::is_none")] pub host: Option, - /// Method is an extended POSIX regex matched against the method of a request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... - /// If omitted or empty, all methods are allowed. + /// Method is an extended POSIX regex matched against the method of a + /// request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... + /// + /// If omitted or empty, all methods are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub method: Option, - /// Path is an extended POSIX regex matched against the path of a request. Currently it can contain characters disallowed from the conventional "path" part of a URL as defined by RFC 3986. - /// If omitted or empty, all paths are all allowed. + /// Path is an extended POSIX regex matched against the path of a + /// request. Currently it can contain characters disallowed from the + /// conventional "path" part of a URL as defined by RFC 3986. + /// + /// If omitted or empty, all paths are all allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub path: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsRulesHttpHeaderMatches { - /// Mismatch identifies what to do in case there is no match. The default is to drop the request. Otherwise the overall rule is still considered as matching, but the mismatches are logged in the access log. + /// Mismatch identifies what to do in case there is no match. The default is + /// to drop the request. Otherwise the overall rule is still considered as + /// matching, but the mismatches are logged in the access log. #[serde(default, skip_serializing_if = "Option::is_none")] pub mismatch: Option, /// Name identifies the header. pub name: String, - /// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. + /// Secret refers to a secret that contains the value to be matched against. + /// The secret must only contain one entry. If the referred secret does not + /// exist, and there is no "Value" specified, the match will fail. #[serde(default, skip_serializing_if = "Option::is_none")] pub secret: Option, - /// Value matches the exact value of the header. Can be specified either alone or together with "Secret"; will be used as the header value if the secret can not be found in the latter case. + /// Value matches the exact value of the header. Can be specified either + /// alone or together with "Secret"; will be used as the header value if the + /// secret can not be found in the latter case. #[serde(default, skip_serializing_if = "Option::is_none")] pub value: Option, } -/// HeaderMatch extends the HeaderValue for matching requirement of a named header field against an immediate string, a secret value, or a regex. If none of the optional fields is present, then the header value is not matched, only presence of the header is enough. +/// HeaderMatch extends the HeaderValue for matching requirement of a +/// named header field against an immediate string, a secret value, or +/// a regex. If none of the optional fields is present, then the +/// header value is not matched, only presence of the header is enough. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysIngressToPortsRulesHttpHeaderMatchesMismatch { #[serde(rename = "LOG")] @@ -3095,47 +4746,89 @@ pub enum CiliumNetworkPolicysIngressToPortsRulesHttpHeaderMatchesMismatch { Replace, } -/// Secret refers to a secret that contains the value to be matched against. The secret must only contain one entry. If the referred secret does not exist, and there is no "Value" specified, the match will fail. +/// Secret refers to a secret that contains the value to be matched against. +/// The secret must only contain one entry. If the referred secret does not +/// exist, and there is no "Value" specified, the match will fail. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsRulesHttpHeaderMatchesSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsRulesKafka { - /// APIKey is a case-insensitive string matched against the key of a request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al Reference: https://kafka.apache.org/protocol#protocol_api_keys - /// If omitted or empty, and if Role is not specified, then all keys are allowed. + /// APIKey is a case-insensitive string matched against the key of a + /// request, e.g. "produce", "fetch", "createtopic", "deletetopic", et al + /// Reference: https://kafka.apache.org/protocol#protocol_api_keys + /// + /// If omitted or empty, and if Role is not specified, then all keys are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiKey")] pub api_key: Option, - /// APIVersion is the version matched against the api version of the Kafka message. If set, it has to be a string representing a positive integer. - /// If omitted or empty, all versions are allowed. + /// APIVersion is the version matched against the api version of the + /// Kafka message. If set, it has to be a string representing a positive + /// integer. + /// + /// If omitted or empty, all versions are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] pub api_version: Option, - /// ClientID is the client identifier as provided in the request. - /// From Kafka protocol documentation: This is a user supplied identifier for the client application. The user can use any identifier they like and it will be used when logging errors, monitoring aggregates, etc. For example, one might want to monitor not just the requests per second overall, but the number coming from each client application (each of which could reside on multiple servers). This id acts as a logical grouping across all requests from a particular client. - /// If omitted or empty, all client identifiers are allowed. + /// ClientID is the client identifier as provided in the request. + /// + /// From Kafka protocol documentation: + /// This is a user supplied identifier for the client application. The + /// user can use any identifier they like and it will be used when + /// logging errors, monitoring aggregates, etc. For example, one might + /// want to monitor not just the requests per second overall, but the + /// number coming from each client application (each of which could + /// reside on multiple servers). This id acts as a logical grouping + /// across all requests from a particular client. + /// + /// If omitted or empty, all client identifiers are allowed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "clientID")] pub client_id: Option, - /// Role is a case-insensitive string and describes a group of API keys necessary to perform certain higher-level Kafka operations such as "produce" or "consume". A Role automatically expands into all APIKeys required to perform the specified higher-level operation. - /// The following values are supported: - "produce": Allow producing to the topics specified in the rule - "consume": Allow consuming from the topics specified in the rule - /// This field is incompatible with the APIKey field, i.e APIKey and Role cannot both be specified in the same rule. - /// If omitted or empty, and if APIKey is not specified, then all keys are allowed. + /// Role is a case-insensitive string and describes a group of API keys + /// necessary to perform certain higher-level Kafka operations such as "produce" + /// or "consume". A Role automatically expands into all APIKeys required + /// to perform the specified higher-level operation. + /// + /// The following values are supported: + /// - "produce": Allow producing to the topics specified in the rule + /// - "consume": Allow consuming from the topics specified in the rule + /// + /// This field is incompatible with the APIKey field, i.e APIKey and Role + /// cannot both be specified in the same rule. + /// + /// If omitted or empty, and if APIKey is not specified, then all keys are + /// allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub role: Option, - /// Topic is the topic name contained in the message. If a Kafka request contains multiple topics, then all topics must be allowed or the message will be rejected. - /// This constraint is ignored if the matched request message type doesn't contain any topic. Maximum size of Topic can be 249 characters as per recent Kafka spec and allowed characters are a-z, A-Z, 0-9, -, . and _. - /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 version the length was changed from 255 to 249. For compatibility reasons we are using 255. - /// If omitted or empty, all topics are allowed. + /// Topic is the topic name contained in the message. If a Kafka request + /// contains multiple topics, then all topics must be allowed or the + /// message will be rejected. + /// + /// This constraint is ignored if the matched request message type + /// doesn't contain any topic. Maximum size of Topic can be 249 + /// characters as per recent Kafka spec and allowed characters are + /// a-z, A-Z, 0-9, -, . and _. + /// + /// Older Kafka versions had longer topic lengths of 255, but in Kafka 0.10 + /// version the length was changed from 255 to 249. For compatibility + /// reasons we are using 255. + /// + /// If omitted or empty, all topics are allowed. #[serde(default, skip_serializing_if = "Option::is_none")] pub topic: Option, } -/// PortRule is a list of Kafka protocol constraints. All fields are optional, if all fields are empty or missing, the rule will match all Kafka messages. +/// PortRule is a list of Kafka protocol constraints. All fields are +/// optional, if all fields are empty or missing, the rule will match all +/// Kafka messages. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysIngressToPortsRulesKafkaRole { #[serde(rename = "produce")] @@ -3144,84 +4837,180 @@ pub enum CiliumNetworkPolicysIngressToPortsRulesKafkaRole { Consume, } -/// TerminatingTLS is the TLS context for the connection terminated by the L7 proxy. For egress policy this specifies the server-side TLS parameters to be applied on the connections originated from the local endpoint and terminated by the L7 proxy. For ingress policy this specifies the server-side TLS parameters to be applied on the connections originated from a remote source and terminated by the L7 proxy. +/// TerminatingTLS is the TLS context for the connection terminated by +/// the L7 proxy. For egress policy this specifies the server-side TLS +/// parameters to be applied on the connections originated from the local +/// endpoint and terminated by the L7 proxy. For ingress policy this specifies +/// the server-side TLS parameters to be applied on the connections +/// originated from a remote source and terminated by the L7 proxy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsTerminatingTls { - /// Certificate is the file name or k8s secret item name for the certificate chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the item must exist. + /// Certificate is the file name or k8s secret item name for the certificate + /// chain. If omitted, 'tls.crt' is assumed, if it exists. If given, the + /// item must exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub certificate: Option, - /// PrivateKey is the file name or k8s secret item name for the private key matching the certificate chain. If omitted, 'tls.key' is assumed, if it exists. If given, the item must exist. + /// PrivateKey is the file name or k8s secret item name for the private key + /// matching the certificate chain. If omitted, 'tls.key' is assumed, if it + /// exists. If given, the item must exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "privateKey")] pub private_key: Option, - /// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. + /// Secret is the secret that contains the certificates and private key for + /// the TLS context. + /// By default, Cilium will search in this secret for the following items: + /// - 'ca.crt' - Which represents the trusted CA to verify remote source. + /// - 'tls.crt' - Which represents the public key certificate. + /// - 'tls.key' - Which represents the private key matching the public key + /// certificate. pub secret: CiliumNetworkPolicysIngressToPortsTerminatingTlsSecret, - /// TrustedCA is the file name or k8s secret item name for the trusted CA. If omitted, 'ca.crt' is assumed, if it exists. If given, the item must exist. + /// TrustedCA is the file name or k8s secret item name for the trusted CA. + /// If omitted, 'ca.crt' is assumed, if it exists. If given, the item must + /// exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedCA")] pub trusted_ca: Option, } -/// Secret is the secret that contains the certificates and private key for the TLS context. By default, Cilium will search in this secret for the following items: - 'ca.crt' - Which represents the trusted CA to verify remote source. - 'tls.crt' - Which represents the public key certificate. - 'tls.key' - Which represents the private key matching the public key certificate. +/// Secret is the secret that contains the certificates and private key for +/// the TLS context. +/// By default, Cilium will search in this secret for the following items: +/// - 'ca.crt' - Which represents the trusted CA to verify remote source. +/// - 'tls.crt' - Which represents the public key certificate. +/// - 'tls.key' - Which represents the private key matching the public key +/// certificate. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressToPortsTerminatingTlsSecret { /// Name is the name of the secret. pub name: String, - /// Namespace is the namespace in which the secret exists. Context of use determines the default value if left out (e.g., "default"). + /// Namespace is the namespace in which the secret exists. Context of use + /// determines the default value if left out (e.g., "default"). #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, } -/// IngressDenyRule contains all rule types which can be applied at ingress, i.e. network traffic that originates outside of the endpoint and is entering the endpoint selected by the endpointSelector. -/// - All members of this structure are optional. If omitted or empty, the member will have no effect on the rule. -/// - If multiple members are set, all of them need to match in order for the rule to take effect. The exception to this rule is FromRequires field; the effects of any Requires field in any rule will apply to all other rules as well. -/// - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually exclusive. Only one of these members may be present within an individual rule. +/// IngressDenyRule contains all rule types which can be applied at ingress, +/// i.e. network traffic that originates outside of the endpoint and +/// is entering the endpoint selected by the endpointSelector. +/// +/// - All members of this structure are optional. If omitted or empty, the +/// member will have no effect on the rule. +/// +/// - If multiple members are set, all of them need to match in order for +/// the rule to take effect. The exception to this rule is FromRequires field; +/// the effects of any Requires field in any rule will apply to all other +/// rules as well. +/// +/// - FromEndpoints, FromCIDR, FromCIDRSet, FromGroups and FromEntities are mutually +/// exclusive. Only one of these members may be present within an individual +/// rule. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressDeny { - /// FromCIDR is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from. Only connections which do *not* originate from the cluster or from the local host are subject to CIDR rules. In order to allow in-cluster connectivity, use the FromEndpoints field. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.3.9.1 + /// FromCIDR is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from. Only connections which + /// do *not* originate from the cluster or from the local host are subject + /// to CIDR rules. In order to allow in-cluster connectivity, use the + /// FromEndpoints field. This will match on the source IP address of + /// incoming connections. Adding a prefix into FromCIDR or into + /// FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are + /// allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.3.9.1 #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDR")] pub from_cidr: Option>, - /// FromCIDRSet is a list of IP blocks which the endpoint subject to the rule is allowed to receive connections from in addition to FromEndpoints, along with a list of subnets contained within their corresponding IP block from which traffic should not be allowed. This will match on the source IP address of incoming connections. Adding a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. - /// Example: Any endpoint with the label "app=my-legacy-pet" is allowed to receive connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. + /// FromCIDRSet is a list of IP blocks which the endpoint subject to the + /// rule is allowed to receive connections from in addition to FromEndpoints, + /// along with a list of subnets contained within their corresponding IP block + /// from which traffic should not be allowed. + /// This will match on the source IP address of incoming connections. Adding + /// a prefix into FromCIDR or into FromCIDRSet with no ExcludeCIDRs is + /// equivalent. Overlaps are allowed between FromCIDR and FromCIDRSet. + /// + /// Example: + /// Any endpoint with the label "app=my-legacy-pet" is allowed to receive + /// connections from 10.0.0.0/8 except from IPs in subnet 10.96.0.0/12. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromCIDRSet")] pub from_cidr_set: Option>, - /// FromEndpoints is a list of endpoints identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. - /// Example: Any endpoint with the label "role=backend" can be consumed by any endpoint carrying the label "role=frontend". + /// FromEndpoints is a list of endpoints identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. + /// + /// Example: + /// Any endpoint with the label "role=backend" can be consumed by any + /// endpoint carrying the label "role=frontend". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEndpoints")] pub from_endpoints: Option>, - /// FromEntities is a list of special entities which the endpoint subject to the rule is allowed to receive connections from. Supported entities are `world`, `cluster` and `host` + /// FromEntities is a list of special entities which the endpoint subject + /// to the rule is allowed to receive connections from. Supported entities are + /// `world`, `cluster` and `host` #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromEntities")] pub from_entities: Option>, - /// FromGroups is a directive that allows the integration with multiple outside providers. Currently, only AWS is supported, and the rule can select by multiple sub directives: - /// Example: FromGroups: - aws: securityGroupsIds: - 'sg-XXXXXXXXXXXXX' + /// FromGroups is a directive that allows the integration with multiple outside + /// providers. Currently, only AWS is supported, and the rule can select by + /// multiple sub directives: + /// + /// Example: + /// FromGroups: + /// - aws: + /// securityGroupsIds: + /// - 'sg-XXXXXXXXXXXXX' #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromGroups")] pub from_groups: Option>, - /// FromNodes is a list of nodes identified by an EndpointSelector which are allowed to communicate with the endpoint subject to the rule. + /// FromNodes is a list of nodes identified by an + /// EndpointSelector which are allowed to communicate with the endpoint + /// subject to the rule. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromNodes")] pub from_nodes: Option>, - /// FromRequires is a list of additional constraints which must be met in order for the selected endpoints to be reachable. These additional constraints do no by itself grant access privileges and must always be accompanied with at least one matching FromEndpoints. - /// Example: Any Endpoint with the label "team=A" requires consuming endpoint to also carry the label "team=A". + /// FromRequires is a list of additional constraints which must be met + /// in order for the selected endpoints to be reachable. These + /// additional constraints do no by itself grant access privileges and + /// must always be accompanied with at least one matching FromEndpoints. + /// + /// Example: + /// Any Endpoint with the label "team=A" requires consuming endpoint + /// to also carry the label "team=A". #[serde(default, skip_serializing_if = "Option::is_none", rename = "fromRequires")] pub from_requires: Option>, - /// ICMPs is a list of ICMP rule identified by type number which the endpoint subject to the rule is not allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can not accept incoming type 8 ICMP connections. + /// ICMPs is a list of ICMP rule identified by type number + /// which the endpoint subject to the rule is not allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can not accept incoming + /// type 8 ICMP connections. #[serde(default, skip_serializing_if = "Option::is_none")] pub icmps: Option>, - /// ToPorts is a list of destination ports identified by port number and protocol which the endpoint subject to the rule is not allowed to receive connections on. - /// Example: Any endpoint with the label "app=httpd" can not accept incoming connections on port 80/tcp. + /// ToPorts is a list of destination ports identified by port number and + /// protocol which the endpoint subject to the rule is not allowed to + /// receive connections on. + /// + /// Example: + /// Any endpoint with the label "app=httpd" can not accept incoming + /// connections on port 80/tcp. #[serde(default, skip_serializing_if = "Option::is_none", rename = "toPorts")] pub to_ports: Option>, } -/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside communication is allowed, along with an optional list of subnets within that CIDR prefix to/from which outside communication is not allowed. +/// CIDRRule is a rule that specifies a CIDR prefix to/from which outside +/// communication is allowed, along with an optional list of subnets within that +/// CIDR prefix to/from which outside communication is not allowed. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressDenyFromCidrSet { /// CIDR is a CIDR prefix / IP Block. #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, - /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive connections from. + /// CIDRGroupRef is a reference to a CiliumCIDRGroup object. + /// A CiliumCIDRGroup contains a list of CIDRs that the endpoint, subject to + /// the rule, can (Ingress/Egress) or cannot (IngressDeny/EgressDeny) receive + /// connections from. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cidrGroupRef")] pub cidr_group_ref: Option, - /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule is not allowed to initiate connections to. These CIDR prefixes should be contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not supported yet. These exceptions are only applied to the Cidr in this CIDRRule, and do not apply to any other CIDR prefixes in any other CIDRRules. + /// ExceptCIDRs is a list of IP blocks which the endpoint subject to the rule + /// is not allowed to initiate connections to. These CIDR prefixes should be + /// contained within Cidr, using ExceptCIDRs together with CIDRGroupRef is not + /// supported yet. + /// These exceptions are only applied to the Cidr in this CIDRRule, and do not + /// apply to any other CIDR prefixes in any other CIDRRules. #[serde(default, skip_serializing_if = "Option::is_none")] pub except: Option>, } @@ -3232,24 +5021,32 @@ pub struct CiliumNetworkPolicysIngressDenyFromEndpoints { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysIngressDenyFromEndpointsMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysIngressDenyFromEndpointsMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysIngressDenyFromEndpointsMatchExpressionsOperator { In, @@ -3258,7 +5055,8 @@ pub enum CiliumNetworkPolicysIngressDenyFromEndpointsMatchExpressionsOperator { DoesNotExist, } -/// Groups structure to store all kinds of new integrations that needs a new derivative policy. +/// Groups structure to store all kinds of new integrations that needs a new +/// derivative policy. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressDenyFromGroups { /// AWSGroup is an structure that can be used to whitelisting information from AWS integration @@ -3285,24 +5083,32 @@ pub struct CiliumNetworkPolicysIngressDenyFromNodes { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysIngressDenyFromNodesMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysIngressDenyFromNodesMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysIngressDenyFromNodesMatchExpressionsOperator { In, @@ -3317,24 +5123,32 @@ pub struct CiliumNetworkPolicysIngressDenyFromRequires { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysIngressDenyFromRequiresMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysIngressDenyFromRequiresMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysIngressDenyFromRequiresMatchExpressionsOperator { In, @@ -3354,10 +5168,25 @@ pub struct CiliumNetworkPolicysIngressDenyIcmps { /// ICMPField is a ICMP field. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressDenyIcmpsFields { - /// Family is a IP address version. Currently, we support `IPv4` and `IPv6`. `IPv4` is set as default. + /// Family is a IP address version. + /// Currently, we support `IPv4` and `IPv6`. + /// `IPv4` is set as default. #[serde(default, skip_serializing_if = "Option::is_none")] pub family: Option, - /// Type is a ICMP-type. It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). Allowed ICMP types are: Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | ExtendedEchoRequest | ExtendedEchoReply + /// Type is a ICMP-type. + /// It should be an 8bit code (0-255), or it's CamelCase name (for example, "EchoReply"). + /// Allowed ICMP types are: + /// Ipv4: EchoReply | DestinationUnreachable | Redirect | Echo | EchoRequest | + /// RouterAdvertisement | RouterSelection | TimeExceeded | ParameterProblem | + /// Timestamp | TimestampReply | Photuris | ExtendedEcho Request | ExtendedEcho Reply + /// Ipv6: DestinationUnreachable | PacketTooBig | TimeExceeded | ParameterProblem | + /// EchoRequest | EchoReply | MulticastListenerQuery| MulticastListenerReport | + /// MulticastListenerDone | RouterSolicitation | RouterAdvertisement | NeighborSolicitation | + /// NeighborAdvertisement | RedirectMessage | RouterRenumbering | ICMPNodeInformationQuery | + /// ICMPNodeInformationResponse | InverseNeighborDiscoverySolicitation | InverseNeighborDiscoveryAdvertisement | + /// HomeAgentAddressDiscoveryRequest | HomeAgentAddressDiscoveryReply | MobilePrefixSolicitation | + /// MobilePrefixAdvertisement | DuplicateAddressRequestCodeSuffix | DuplicateAddressConfirmationCodeSuffix | + /// ExtendedEchoRequest | ExtendedEchoReply #[serde(rename = "type")] pub r#type: IntOrString, } @@ -3369,7 +5198,9 @@ pub enum CiliumNetworkPolicysIngressDenyIcmpsFieldsFamily { IPv6, } -/// PortDenyRule is a list of ports/protocol that should be used for deny policies. This structure lacks the L7Rules since it's not supported in deny policies. +/// PortDenyRule is a list of ports/protocol that should be used for deny +/// policies. This structure lacks the L7Rules since it's not supported in deny +/// policies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysIngressDenyToPorts { /// Ports is a list of L4 port/protocol @@ -3383,11 +5214,16 @@ pub struct CiliumNetworkPolicysIngressDenyToPortsPorts { /// EndPort can only be an L4 port number. #[serde(default, skip_serializing_if = "Option::is_none", rename = "endPort")] pub end_port: Option, - /// Port can be an L4 port number, or a name in the form of "http" or "http-8080". + /// Port can be an L4 port number, or a name in the form of "http" + /// or "http-8080". pub port: String, - /// Protocol is the L4 protocol. If omitted or empty, any protocol matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" - /// Matching on ICMP is not supported. - /// Named port specified for a container may narrow this down, but may not contradict this. + /// Protocol is the L4 protocol. If omitted or empty, any protocol + /// matches. Accepted values: "TCP", "UDP", "SCTP", "ANY" + /// + /// Matching on ICMP is not supported. + /// + /// Named port specified for a container may narrow this down, but may not + /// contradict this. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -3416,30 +5252,40 @@ pub struct CiliumNetworkPolicysLabels { pub value: Option, } -/// NodeSelector selects all nodes which should be subject to this rule. EndpointSelector and NodeSelector cannot be both empty and are mutually exclusive. Can only be used in CiliumClusterwideNetworkPolicies. +/// NodeSelector selects all nodes which should be subject to this rule. +/// EndpointSelector and NodeSelector cannot be both empty and are mutually +/// exclusive. Can only be used in CiliumClusterwideNetworkPolicies. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicysNodeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumNetworkPolicysNodeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumNetworkPolicysNodeSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumNetworkPolicysNodeSelectorMatchExpressionsOperator { In, @@ -3453,30 +5299,42 @@ pub enum CiliumNetworkPolicysNodeSelectorMatchExpressionsOperator { pub struct CiliumNetworkPolicyStatus { #[serde(default, skip_serializing_if = "Option::is_none")] pub conditions: Option>, - /// DerivativePolicies is the status of all policies derived from the Cilium policy + /// DerivativePolicies is the status of all policies derived from the Cilium + /// policy #[serde(default, skip_serializing_if = "Option::is_none", rename = "derivativePolicies")] pub derivative_policies: Option>, } -/// DerivativePolicies is the status of all policies derived from the Cilium policy +/// DerivativePolicies is the status of all policies derived from the Cilium +/// policy #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNetworkPolicyStatusDerivativePolicies { - /// Annotations corresponds to the Annotations in the ObjectMeta of the CNP that have been realized on the node for CNP. That is, if a CNP has been imported and has been assigned annotation X=Y by the user, Annotations in CiliumNetworkPolicyNodeStatus will be X=Y once the CNP that was imported corresponding to Annotation X=Y has been realized on the node. + /// Annotations corresponds to the Annotations in the ObjectMeta of the CNP + /// that have been realized on the node for CNP. That is, if a CNP has been + /// imported and has been assigned annotation X=Y by the user, + /// Annotations in CiliumNetworkPolicyNodeStatus will be X=Y once the + /// CNP that was imported corresponding to Annotation X=Y has been realized on + /// the node. #[serde(default, skip_serializing_if = "Option::is_none")] pub annotations: Option>, - /// Enforcing is set to true once all endpoints present at the time the policy has been imported are enforcing this policy. + /// Enforcing is set to true once all endpoints present at the time the + /// policy has been imported are enforcing this policy. #[serde(default, skip_serializing_if = "Option::is_none")] pub enforcing: Option, - /// Error describes any error that occurred when parsing or importing the policy, or realizing the policy for the endpoints to which it applies on the node. + /// Error describes any error that occurred when parsing or importing the + /// policy, or realizing the policy for the endpoints to which it applies + /// on the node. #[serde(default, skip_serializing_if = "Option::is_none")] pub error: Option, /// LastUpdated contains the last time this status was updated #[serde(default, skip_serializing_if = "Option::is_none", rename = "lastUpdated")] pub last_updated: Option, - /// Revision is the policy revision of the repository which first implemented this policy. + /// Revision is the policy revision of the repository which first implemented + /// this policy. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localPolicyRevision")] pub local_policy_revision: Option, - /// OK is true when the policy has been parsed and imported successfully into the in-memory policy repository on the node. + /// OK is true when the policy has been parsed and imported successfully + /// into the in-memory policy repository on the node. #[serde(default, skip_serializing_if = "Option::is_none")] pub ok: Option, } diff --git a/kube-custom-resources-rs/src/cilium_io/v2/ciliumnodes.rs b/kube-custom-resources-rs/src/cilium_io/v2/ciliumnodes.rs index 3caf8cf74..2f384e1c7 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2/ciliumnodes.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2/ciliumnodes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2/ciliumnodes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -36,16 +36,22 @@ pub struct CiliumNodeSpec { /// ENI is the AWS ENI specific configuration. #[serde(default, skip_serializing_if = "Option::is_none")] pub eni: Option, - /// HealthAddressing is the addressing information for health connectivity checking. + /// HealthAddressing is the addressing information for health connectivity + /// checking. #[serde(default, skip_serializing_if = "Option::is_none")] pub health: Option, /// IngressAddressing is the addressing information for Ingress listener. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingress: Option, - /// InstanceID is the identifier of the node. This is different from the node name which is typically the FQDN of the node. The InstanceID typically refers to the identifier used by the cloud provider or some other means of identification. + /// InstanceID is the identifier of the node. This is different from the + /// node name which is typically the FQDN of the node. The InstanceID + /// typically refers to the identifier used by the cloud provider or + /// some other means of identification. #[serde(default, skip_serializing_if = "Option::is_none", rename = "instance-id")] pub instance_id: Option, - /// IPAM is the address management specification. This section can be populated by a user or it can be automatically populated by an IPAM operator. + /// IPAM is the address management specification. This section can be + /// populated by a user or it can be automatically populated by an IPAM + /// operator. #[serde(default, skip_serializing_if = "Option::is_none")] pub ipam: Option, /// NodeIdentity is the Cilium numeric identity allocated for the node, if any. @@ -67,7 +73,8 @@ pub struct CiliumNodeAddresses { /// AlibabaCloud is the AlibabaCloud IPAM specific configuration. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeAlibabaCloud { - /// AvailabilityZone is the availability zone to use when allocating ENIs. + /// AvailabilityZone is the availability zone to use when allocating + /// ENIs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "availability-zone")] pub availability_zone: Option, /// CIDRBlock is vpc ipv4 CIDR @@ -76,16 +83,19 @@ pub struct CiliumNodeAlibabaCloud { /// InstanceType is the ECS instance type, e.g. "ecs.g6.2xlarge" #[serde(default, skip_serializing_if = "Option::is_none", rename = "instance-type")] pub instance_type: Option, - /// SecurityGroupTags is the list of tags to use when evaluating which security groups to use for the ENI. + /// SecurityGroupTags is the list of tags to use when evaluating which + /// security groups to use for the ENI. #[serde(default, skip_serializing_if = "Option::is_none", rename = "security-group-tags")] pub security_group_tags: Option>, - /// SecurityGroups is the list of security groups to attach to any ENI that is created and attached to the instance. + /// SecurityGroups is the list of security groups to attach to any ENI + /// that is created and attached to the instance. #[serde(default, skip_serializing_if = "Option::is_none", rename = "security-groups")] pub security_groups: Option>, /// VPCID is the VPC ID to use when allocating ENIs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "vpc-id")] pub vpc_id: Option, - /// VSwitchTags is the list of tags to use when evaluating which vSwitch to use for the ENI. + /// VSwitchTags is the list of tags to use when evaluating which + /// vSwitch to use for the ENI. #[serde(default, skip_serializing_if = "Option::is_none", rename = "vswitch-tags")] pub vswitch_tags: Option>, /// VSwitches is the ID of vSwitch available for ENI @@ -96,7 +106,8 @@ pub struct CiliumNodeAlibabaCloud { /// Azure is the Azure IPAM specific configuration. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeAzure { - /// InterfaceName is the name of the interface the cilium-operator will use to allocate all the IPs on + /// InterfaceName is the name of the interface the cilium-operator + /// will use to allocate all the IPs on #[serde(default, skip_serializing_if = "Option::is_none", rename = "interface-name")] pub interface_name: Option, } @@ -104,7 +115,8 @@ pub struct CiliumNodeAzure { /// Encryption is the encryption configuration of the node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeEncryption { - /// Key is the index to the key to use for encryption or 0 if encryption is disabled. + /// Key is the index to the key to use for encryption or 0 if encryption is + /// disabled. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, } @@ -112,56 +124,88 @@ pub struct CiliumNodeEncryption { /// ENI is the AWS ENI specific configuration. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeEni { - /// AvailabilityZone is the availability zone to use when allocating ENIs. + /// AvailabilityZone is the availability zone to use when allocating + /// ENIs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "availability-zone")] pub availability_zone: Option, - /// DeleteOnTermination defines that the ENI should be deleted when the associated instance is terminated. If the parameter is not set the default behavior is to delete the ENI on instance termination. + /// DeleteOnTermination defines that the ENI should be deleted when the + /// associated instance is terminated. If the parameter is not set the + /// default behavior is to delete the ENI on instance termination. #[serde(default, skip_serializing_if = "Option::is_none", rename = "delete-on-termination")] pub delete_on_termination: Option, - /// DisablePrefixDelegation determines whether ENI prefix delegation should be disabled on this node. + /// DisablePrefixDelegation determines whether ENI prefix delegation should be + /// disabled on this node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "disable-prefix-delegation")] pub disable_prefix_delegation: Option, - /// ExcludeInterfaceTags is the list of tags to use when excluding ENIs for Cilium IP allocation. Any interface matching this set of tags will not be managed by Cilium. + /// ExcludeInterfaceTags is the list of tags to use when excluding ENIs for + /// Cilium IP allocation. Any interface matching this set of tags will not + /// be managed by Cilium. #[serde(default, skip_serializing_if = "Option::is_none", rename = "exclude-interface-tags")] pub exclude_interface_tags: Option>, - /// FirstInterfaceIndex is the index of the first ENI to use for IP allocation, e.g. if the node has eth0, eth1, eth2 and FirstInterfaceIndex is set to 1, then only eth1 and eth2 will be used for IP allocation, eth0 will be ignored for PodIP allocation. + /// FirstInterfaceIndex is the index of the first ENI to use for IP + /// allocation, e.g. if the node has eth0, eth1, eth2 and + /// FirstInterfaceIndex is set to 1, then only eth1 and eth2 will be + /// used for IP allocation, eth0 will be ignored for PodIP allocation. #[serde(default, skip_serializing_if = "Option::is_none", rename = "first-interface-index")] pub first_interface_index: Option, - /// InstanceID is the AWS InstanceId of the node. The InstanceID is used to retrieve AWS metadata for the node. - /// OBSOLETE: This field is obsolete, please use Spec.InstanceID + /// InstanceID is the AWS InstanceId of the node. The InstanceID is used + /// to retrieve AWS metadata for the node. + /// + /// OBSOLETE: This field is obsolete, please use Spec.InstanceID #[serde(default, skip_serializing_if = "Option::is_none", rename = "instance-id")] pub instance_id: Option, /// InstanceType is the AWS EC2 instance type, e.g. "m5.large" #[serde(default, skip_serializing_if = "Option::is_none", rename = "instance-type")] pub instance_type: Option, - /// MaxAboveWatermark is the maximum number of addresses to allocate beyond the addresses needed to reach the PreAllocate watermark. Going above the watermark can help reduce the number of API calls to allocate IPs, e.g. when a new ENI is allocated, as many secondary IPs as possible are allocated. Limiting the amount can help reduce waste of IPs. - /// OBSOLETE: This field is obsolete, please use Spec.IPAM.MaxAboveWatermark + /// MaxAboveWatermark is the maximum number of addresses to allocate + /// beyond the addresses needed to reach the PreAllocate watermark. + /// Going above the watermark can help reduce the number of API calls to + /// allocate IPs, e.g. when a new ENI is allocated, as many secondary + /// IPs as possible are allocated. Limiting the amount can help reduce + /// waste of IPs. + /// + /// OBSOLETE: This field is obsolete, please use Spec.IPAM.MaxAboveWatermark #[serde(default, skip_serializing_if = "Option::is_none", rename = "max-above-watermark")] pub max_above_watermark: Option, - /// MinAllocate is the minimum number of IPs that must be allocated when the node is first bootstrapped. It defines the minimum base socket of addresses that must be available. After reaching this watermark, the PreAllocate and MaxAboveWatermark logic takes over to continue allocating IPs. - /// OBSOLETE: This field is obsolete, please use Spec.IPAM.MinAllocate + /// MinAllocate is the minimum number of IPs that must be allocated when + /// the node is first bootstrapped. It defines the minimum base socket + /// of addresses that must be available. After reaching this watermark, + /// the PreAllocate and MaxAboveWatermark logic takes over to continue + /// allocating IPs. + /// + /// OBSOLETE: This field is obsolete, please use Spec.IPAM.MinAllocate #[serde(default, skip_serializing_if = "Option::is_none", rename = "min-allocate")] pub min_allocate: Option, - /// NodeSubnetID is the subnet of the primary ENI the instance was brought up with. It is used as a sensible default subnet to create ENIs in. + /// NodeSubnetID is the subnet of the primary ENI the instance was brought up + /// with. It is used as a sensible default subnet to create ENIs in. #[serde(default, skip_serializing_if = "Option::is_none", rename = "node-subnet-id")] pub node_subnet_id: Option, - /// PreAllocate defines the number of IP addresses that must be available for allocation in the IPAMspec. It defines the buffer of addresses available immediately without requiring cilium-operator to get involved. - /// OBSOLETE: This field is obsolete, please use Spec.IPAM.PreAllocate + /// PreAllocate defines the number of IP addresses that must be + /// available for allocation in the IPAMspec. It defines the buffer of + /// addresses available immediately without requiring cilium-operator to + /// get involved. + /// + /// OBSOLETE: This field is obsolete, please use Spec.IPAM.PreAllocate #[serde(default, skip_serializing_if = "Option::is_none", rename = "pre-allocate")] pub pre_allocate: Option, - /// SecurityGroupTags is the list of tags to use when evaliating what AWS security groups to use for the ENI. + /// SecurityGroupTags is the list of tags to use when evaliating what + /// AWS security groups to use for the ENI. #[serde(default, skip_serializing_if = "Option::is_none", rename = "security-group-tags")] pub security_group_tags: Option>, - /// SecurityGroups is the list of security groups to attach to any ENI that is created and attached to the instance. + /// SecurityGroups is the list of security groups to attach to any ENI + /// that is created and attached to the instance. #[serde(default, skip_serializing_if = "Option::is_none", rename = "security-groups")] pub security_groups: Option>, - /// SubnetIDs is the list of subnet ids to use when evaluating what AWS subnets to use for ENI and IP allocation. + /// SubnetIDs is the list of subnet ids to use when evaluating what AWS + /// subnets to use for ENI and IP allocation. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subnet-ids")] pub subnet_ids: Option>, - /// SubnetTags is the list of tags to use when evaluating what AWS subnets to use for ENI and IP allocation. + /// SubnetTags is the list of tags to use when evaluating what AWS + /// subnets to use for ENI and IP allocation. #[serde(default, skip_serializing_if = "Option::is_none", rename = "subnet-tags")] pub subnet_tags: Option>, - /// UsePrimaryAddress determines whether an ENI's primary address should be available for allocations on the node + /// UsePrimaryAddress determines whether an ENI's primary address + /// should be available for allocations on the node #[serde(default, skip_serializing_if = "Option::is_none", rename = "use-primary-address")] pub use_primary_address: Option, /// VpcID is the VPC ID to use when allocating ENIs. @@ -169,7 +213,8 @@ pub struct CiliumNodeEni { pub vpc_id: Option, } -/// HealthAddressing is the addressing information for health connectivity checking. +/// HealthAddressing is the addressing information for health connectivity +/// checking. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeHealth { /// IPv4 is the IPv4 address of the IPv4 health endpoint. @@ -189,55 +234,93 @@ pub struct CiliumNodeIngress { pub ipv6: Option, } -/// IPAM is the address management specification. This section can be populated by a user or it can be automatically populated by an IPAM operator. +/// IPAM is the address management specification. This section can be +/// populated by a user or it can be automatically populated by an IPAM +/// operator. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeIpam { - /// IPv6Pool is the list of IPv6 addresses available to the node for allocation. When an IPv6 address is used, it will remain on this list but will be added to Status.IPAM.IPv6Used + /// IPv6Pool is the list of IPv6 addresses available to the node for allocation. + /// When an IPv6 address is used, it will remain on this list but will be added to + /// Status.IPAM.IPv6Used #[serde(default, skip_serializing_if = "Option::is_none", rename = "ipv6-pool")] pub ipv6_pool: Option>, - /// MaxAboveWatermark is the maximum number of addresses to allocate beyond the addresses needed to reach the PreAllocate watermark. Going above the watermark can help reduce the number of API calls to allocate IPs, e.g. when a new ENI is allocated, as many secondary IPs as possible are allocated. Limiting the amount can help reduce waste of IPs. + /// MaxAboveWatermark is the maximum number of addresses to allocate + /// beyond the addresses needed to reach the PreAllocate watermark. + /// Going above the watermark can help reduce the number of API calls to + /// allocate IPs, e.g. when a new ENI is allocated, as many secondary + /// IPs as possible are allocated. Limiting the amount can help reduce + /// waste of IPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "max-above-watermark")] pub max_above_watermark: Option, - /// MaxAllocate is the maximum number of IPs that can be allocated to the node. When the current amount of allocated IPs will approach this value, the considered value for PreAllocate will decrease down to 0 in order to not attempt to allocate more addresses than defined. + /// MaxAllocate is the maximum number of IPs that can be allocated to the + /// node. When the current amount of allocated IPs will approach this value, + /// the considered value for PreAllocate will decrease down to 0 in order to + /// not attempt to allocate more addresses than defined. #[serde(default, skip_serializing_if = "Option::is_none", rename = "max-allocate")] pub max_allocate: Option, - /// MinAllocate is the minimum number of IPs that must be allocated when the node is first bootstrapped. It defines the minimum base socket of addresses that must be available. After reaching this watermark, the PreAllocate and MaxAboveWatermark logic takes over to continue allocating IPs. + /// MinAllocate is the minimum number of IPs that must be allocated when + /// the node is first bootstrapped. It defines the minimum base socket + /// of addresses that must be available. After reaching this watermark, + /// the PreAllocate and MaxAboveWatermark logic takes over to continue + /// allocating IPs. #[serde(default, skip_serializing_if = "Option::is_none", rename = "min-allocate")] pub min_allocate: Option, - /// PodCIDRs is the list of CIDRs available to the node for allocation. When an IP is used, the IP will be added to Status.IPAM.Used + /// PodCIDRs is the list of CIDRs available to the node for allocation. + /// When an IP is used, the IP will be added to Status.IPAM.Used #[serde(default, skip_serializing_if = "Option::is_none", rename = "podCIDRs")] pub pod_cid_rs: Option>, - /// Pool is the list of IPv4 addresses available to the node for allocation. When an IPv4 address is used, it will remain on this list but will be added to Status.IPAM.Used + /// Pool is the list of IPv4 addresses available to the node for allocation. + /// When an IPv4 address is used, it will remain on this list but will be added to + /// Status.IPAM.Used #[serde(default, skip_serializing_if = "Option::is_none")] pub pool: Option>, /// Pools contains the list of assigned IPAM pools for this node. #[serde(default, skip_serializing_if = "Option::is_none")] pub pools: Option, - /// PreAllocate defines the number of IP addresses that must be available for allocation in the IPAMspec. It defines the buffer of addresses available immediately without requiring cilium-operator to get involved. + /// PreAllocate defines the number of IP addresses that must be + /// available for allocation in the IPAMspec. It defines the buffer of + /// addresses available immediately without requiring cilium-operator to + /// get involved. #[serde(default, skip_serializing_if = "Option::is_none", rename = "pre-allocate")] pub pre_allocate: Option, } -/// IPv6Pool is the list of IPv6 addresses available to the node for allocation. When an IPv6 address is used, it will remain on this list but will be added to Status.IPAM.IPv6Used +/// IPv6Pool is the list of IPv6 addresses available to the node for allocation. +/// When an IPv6 address is used, it will remain on this list but will be added to +/// Status.IPAM.IPv6Used #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeIpamIpv6Pool { - /// Owner is the owner of the IP. This field is set if the IP has been allocated. It will be set to the pod name or another identifier representing the usage of the IP - /// The owner field is left blank for an entry in Spec.IPAM.Pool and filled out as the IP is used and also added to Status.IPAM.Used. + /// Owner is the owner of the IP. This field is set if the IP has been + /// allocated. It will be set to the pod name or another identifier + /// representing the usage of the IP + /// + /// The owner field is left blank for an entry in Spec.IPAM.Pool and + /// filled out as the IP is used and also added to Status.IPAM.Used. #[serde(default, skip_serializing_if = "Option::is_none")] pub owner: Option, - /// Resource is set for both available and allocated IPs, it represents what resource the IP is associated with, e.g. in combination with AWS ENI, this will refer to the ID of the ENI + /// Resource is set for both available and allocated IPs, it represents + /// what resource the IP is associated with, e.g. in combination with + /// AWS ENI, this will refer to the ID of the ENI #[serde(default, skip_serializing_if = "Option::is_none")] pub resource: Option, } -/// Pool is the list of IPv4 addresses available to the node for allocation. When an IPv4 address is used, it will remain on this list but will be added to Status.IPAM.Used +/// Pool is the list of IPv4 addresses available to the node for allocation. +/// When an IPv4 address is used, it will remain on this list but will be added to +/// Status.IPAM.Used #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeIpamPool { - /// Owner is the owner of the IP. This field is set if the IP has been allocated. It will be set to the pod name or another identifier representing the usage of the IP - /// The owner field is left blank for an entry in Spec.IPAM.Pool and filled out as the IP is used and also added to Status.IPAM.Used. + /// Owner is the owner of the IP. This field is set if the IP has been + /// allocated. It will be set to the pod name or another identifier + /// representing the usage of the IP + /// + /// The owner field is left blank for an entry in Spec.IPAM.Pool and + /// filled out as the IP is used and also added to Status.IPAM.Used. #[serde(default, skip_serializing_if = "Option::is_none")] pub owner: Option, - /// Resource is set for both available and allocated IPs, it represents what resource the IP is associated with, e.g. in combination with AWS ENI, this will refer to the ID of the ENI + /// Resource is set for both available and allocated IPs, it represents + /// what resource the IP is associated with, e.g. in combination with + /// AWS ENI, this will refer to the ID of the ENI #[serde(default, skip_serializing_if = "Option::is_none")] pub resource: Option, } @@ -245,15 +328,20 @@ pub struct CiliumNodeIpamPool { /// Pools contains the list of assigned IPAM pools for this node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeIpamPools { - /// Allocated contains the list of pooled CIDR assigned to this node. The operator will add new pod CIDRs to this field, whereas the agent will remove CIDRs it has released. + /// Allocated contains the list of pooled CIDR assigned to this node. The + /// operator will add new pod CIDRs to this field, whereas the agent will + /// remove CIDRs it has released. #[serde(default, skip_serializing_if = "Option::is_none")] pub allocated: Option>, - /// Requested contains a list of IPAM pool requests, i.e. indicates how many addresses this node requests out of each pool listed here. This field is owned and written to by cilium-agent and read by the operator. + /// Requested contains a list of IPAM pool requests, i.e. indicates how many + /// addresses this node requests out of each pool listed here. This field + /// is owned and written to by cilium-agent and read by the operator. #[serde(default, skip_serializing_if = "Option::is_none")] pub requested: Option>, } -/// IPAMPoolAllocation describes an allocation of an IPAM pool from the operator to the node. It contains the assigned PodCIDRs allocated from this pool +/// IPAMPoolAllocation describes an allocation of an IPAM pool from the operator to the +/// node. It contains the assigned PodCIDRs allocated from this pool #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeIpamPoolsAllocated { /// CIDRs contains a list of pod CIDRs currently allocated from this pool @@ -265,25 +353,34 @@ pub struct CiliumNodeIpamPoolsAllocated { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeIpamPoolsRequested { - /// Needed indicates how many IPs out of the above Pool this node requests from the operator. The operator runs a reconciliation loop to ensure each node always has enough PodCIDRs allocated in each pool to fulfill the requested number of IPs here. + /// Needed indicates how many IPs out of the above Pool this node requests + /// from the operator. The operator runs a reconciliation loop to ensure each + /// node always has enough PodCIDRs allocated in each pool to fulfill the + /// requested number of IPs here. #[serde(default, skip_serializing_if = "Option::is_none")] pub needed: Option, /// Pool is the name of the IPAM pool backing this request pub pool: String, } -/// Needed indicates how many IPs out of the above Pool this node requests from the operator. The operator runs a reconciliation loop to ensure each node always has enough PodCIDRs allocated in each pool to fulfill the requested number of IPs here. +/// Needed indicates how many IPs out of the above Pool this node requests +/// from the operator. The operator runs a reconciliation loop to ensure each +/// node always has enough PodCIDRs allocated in each pool to fulfill the +/// requested number of IPs here. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeIpamPoolsRequestedNeeded { - /// IPv4Addrs contains the number of requested IPv4 addresses out of a given pool + /// IPv4Addrs contains the number of requested IPv4 addresses out of a given + /// pool #[serde(default, skip_serializing_if = "Option::is_none", rename = "ipv4-addrs")] pub ipv4_addrs: Option, - /// IPv6Addrs contains the number of requested IPv6 addresses out of a given pool + /// IPv6Addrs contains the number of requested IPv6 addresses out of a given + /// pool #[serde(default, skip_serializing_if = "Option::is_none", rename = "ipv6-addrs")] pub ipv6_addrs: Option, } -/// Status defines the realized specification/configuration and status of the node. +/// Status defines the realized specification/configuration and status +/// of the node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeStatus { /// AlibabaCloud is the AlibabaCloud specific status of the node. @@ -397,11 +494,13 @@ pub struct CiliumNodeStatusAzure { /// AzureInterface represents an Azure Interface #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeStatusAzureInterfaces { - /// GatewayIP is the interface's subnet's default route - /// OBSOLETE: This field is obsolete, please use Gateway field instead. + /// GatewayIP is the interface's subnet's default route + /// + /// OBSOLETE: This field is obsolete, please use Gateway field instead. #[serde(default, skip_serializing_if = "Option::is_none", rename = "GatewayIP")] pub gateway_ip: Option, - /// Addresses is the list of all IPs associated with the interface, including all secondary addresses + /// Addresses is the list of all IPs associated with the interface, + /// including all secondary addresses #[serde(default, skip_serializing_if = "Option::is_none")] pub addresses: Option>, /// CIDR is the range that the interface belongs to. @@ -470,7 +569,8 @@ pub struct CiliumNodeStatusEniEnis { /// MAC is the mac address of the ENI #[serde(default, skip_serializing_if = "Option::is_none")] pub mac: Option, - /// Number is the interface index, it used in combination with FirstInterfaceIndex + /// Number is the interface index, it used in combination with + /// FirstInterfaceIndex #[serde(default, skip_serializing_if = "Option::is_none")] pub number: Option, /// Prefixes is the list of all /28 prefixes associated with the ENI @@ -482,7 +582,8 @@ pub struct CiliumNodeStatusEniEnis { /// Subnet is the subnet the ENI is associated with #[serde(default, skip_serializing_if = "Option::is_none")] pub subnet: Option, - /// Tags is the set of tags of the ENI. Used to detect ENIs which should not be managed by Cilium + /// Tags is the set of tags of the ENI. Used to detect ENIs which should + /// not be managed by Cilium #[serde(default, skip_serializing_if = "Option::is_none")] pub tags: Option>, /// VPC is the VPC information to which the ENI is attached to @@ -518,7 +619,8 @@ pub struct CiliumNodeStatusEniEnisVpc { /// IPAM is the IPAM status of the node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeStatusIpam { - /// IPv6Used lists all IPv6 addresses out of Spec.IPAM.IPv6Pool which have been allocated and are in use. + /// IPv6Used lists all IPv6 addresses out of Spec.IPAM.IPv6Pool which have been + /// allocated and are in use. #[serde(default, skip_serializing_if = "Option::is_none", rename = "ipv6-used")] pub ipv6_used: Option>, /// Operator is the Operator status of the node @@ -527,25 +629,43 @@ pub struct CiliumNodeStatusIpam { /// PodCIDRs lists the status of each pod CIDR allocated to this node. #[serde(default, skip_serializing_if = "Option::is_none", rename = "pod-cidrs")] pub pod_cidrs: Option>, - /// ReleaseIPs tracks the state for every IPv4 address considered for release. The value can be one of the following strings: * marked-for-release : Set by operator as possible candidate for IP * ready-for-release : Acknowledged as safe to release by agent * do-not-release : IP already in use / not owned by the node. Set by agent * released : IP successfully released. Set by operator + /// ReleaseIPs tracks the state for every IPv4 address considered for release. + /// The value can be one of the following strings: + /// * marked-for-release : Set by operator as possible candidate for IP + /// * ready-for-release : Acknowledged as safe to release by agent + /// * do-not-release : IP already in use / not owned by the node. Set by agent + /// * released : IP successfully released. Set by operator #[serde(default, skip_serializing_if = "Option::is_none", rename = "release-ips")] pub release_ips: Option>, - /// ReleaseIPv6s tracks the state for every IPv6 address considered for release. The value can be one of the following strings: * marked-for-release : Set by operator as possible candidate for IP * ready-for-release : Acknowledged as safe to release by agent * do-not-release : IP already in use / not owned by the node. Set by agent * released : IP successfully released. Set by operator + /// ReleaseIPv6s tracks the state for every IPv6 address considered for release. + /// The value can be one of the following strings: + /// * marked-for-release : Set by operator as possible candidate for IP + /// * ready-for-release : Acknowledged as safe to release by agent + /// * do-not-release : IP already in use / not owned by the node. Set by agent + /// * released : IP successfully released. Set by operator #[serde(default, skip_serializing_if = "Option::is_none", rename = "release-ipv6s")] pub release_ipv6s: Option>, - /// Used lists all IPv4 addresses out of Spec.IPAM.Pool which have been allocated and are in use. + /// Used lists all IPv4 addresses out of Spec.IPAM.Pool which have been allocated + /// and are in use. #[serde(default, skip_serializing_if = "Option::is_none")] pub used: Option>, } -/// IPv6Used lists all IPv6 addresses out of Spec.IPAM.IPv6Pool which have been allocated and are in use. +/// IPv6Used lists all IPv6 addresses out of Spec.IPAM.IPv6Pool which have been +/// allocated and are in use. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeStatusIpamIpv6Used { - /// Owner is the owner of the IP. This field is set if the IP has been allocated. It will be set to the pod name or another identifier representing the usage of the IP - /// The owner field is left blank for an entry in Spec.IPAM.Pool and filled out as the IP is used and also added to Status.IPAM.Used. + /// Owner is the owner of the IP. This field is set if the IP has been + /// allocated. It will be set to the pod name or another identifier + /// representing the usage of the IP + /// + /// The owner field is left blank for an entry in Spec.IPAM.Pool and + /// filled out as the IP is used and also added to Status.IPAM.Used. #[serde(default, skip_serializing_if = "Option::is_none")] pub owner: Option, - /// Resource is set for both available and allocated IPs, it represents what resource the IP is associated with, e.g. in combination with AWS ENI, this will refer to the ID of the ENI + /// Resource is set for both available and allocated IPs, it represents + /// what resource the IP is associated with, e.g. in combination with + /// AWS ENI, this will refer to the ID of the ENI #[serde(default, skip_serializing_if = "Option::is_none")] pub resource: Option, } @@ -577,14 +697,21 @@ pub enum CiliumNodeStatusIpamPodCidrsStatus { InUse, } -/// Used lists all IPv4 addresses out of Spec.IPAM.Pool which have been allocated and are in use. +/// Used lists all IPv4 addresses out of Spec.IPAM.Pool which have been allocated +/// and are in use. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumNodeStatusIpamUsed { - /// Owner is the owner of the IP. This field is set if the IP has been allocated. It will be set to the pod name or another identifier representing the usage of the IP - /// The owner field is left blank for an entry in Spec.IPAM.Pool and filled out as the IP is used and also added to Status.IPAM.Used. + /// Owner is the owner of the IP. This field is set if the IP has been + /// allocated. It will be set to the pod name or another identifier + /// representing the usage of the IP + /// + /// The owner field is left blank for an entry in Spec.IPAM.Pool and + /// filled out as the IP is used and also added to Status.IPAM.Used. #[serde(default, skip_serializing_if = "Option::is_none")] pub owner: Option, - /// Resource is set for both available and allocated IPs, it represents what resource the IP is associated with, e.g. in combination with AWS ENI, this will refer to the ID of the ENI + /// Resource is set for both available and allocated IPs, it represents + /// what resource the IP is associated with, e.g. in combination with + /// AWS ENI, this will refer to the ID of the ENI #[serde(default, skip_serializing_if = "Option::is_none")] pub resource: Option, } diff --git a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumbgppeeringpolicies.rs b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumbgppeeringpolicies.rs index 13f8e5c1a..8f3403217 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumbgppeeringpolicies.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumbgppeeringpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumbgppeeringpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -17,40 +17,53 @@ use self::prelude::*; #[kube(derive="Default")] #[kube(derive="PartialEq")] pub struct CiliumBGPPeeringPolicySpec { - /// NodeSelector selects a group of nodes where this BGP Peering Policy applies. - /// If empty / nil this policy applies to all nodes. + /// NodeSelector selects a group of nodes where this BGP Peering + /// Policy applies. + /// + /// If empty / nil this policy applies to all nodes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeSelector")] pub node_selector: Option, - /// A list of CiliumBGPVirtualRouter(s) which instructs the BGP control plane how to instantiate virtual BGP routers. + /// A list of CiliumBGPVirtualRouter(s) which instructs + /// the BGP control plane how to instantiate virtual BGP routers. #[serde(rename = "virtualRouters")] pub virtual_routers: Vec, } -/// NodeSelector selects a group of nodes where this BGP Peering Policy applies. -/// If empty / nil this policy applies to all nodes. +/// NodeSelector selects a group of nodes where this BGP Peering +/// Policy applies. +/// +/// If empty / nil this policy applies to all nodes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumBGPPeeringPolicyNodeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumBGPPeeringPolicyNodeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumBGPPeeringPolicyNodeSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumBGPPeeringPolicyNodeSelectorMatchExpressionsOperator { In, @@ -62,85 +75,129 @@ pub enum CiliumBGPPeeringPolicyNodeSelectorMatchExpressionsOperator { /// CiliumBGPVirtualRouter defines a discrete BGP virtual router configuration. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRouters { - /// ExportPodCIDR determines whether to export the Node's private CIDR block to the configured neighbors. + /// ExportPodCIDR determines whether to export the Node's private CIDR block + /// to the configured neighbors. #[serde(default, skip_serializing_if = "Option::is_none", rename = "exportPodCIDR")] pub export_pod_cidr: Option, - /// LocalASN is the ASN of this virtual router. Supports extended 32bit ASNs + /// LocalASN is the ASN of this virtual router. + /// Supports extended 32bit ASNs #[serde(rename = "localASN")] pub local_asn: i64, /// Neighbors is a list of neighboring BGP peers for this virtual router pub neighbors: Vec, - /// PodIPPoolSelector selects CiliumPodIPPools based on labels. The virtual router will announce allocated CIDRs of matching CiliumPodIPPools. - /// If empty / nil no CiliumPodIPPools will be announced. + /// PodIPPoolSelector selects CiliumPodIPPools based on labels. The virtual + /// router will announce allocated CIDRs of matching CiliumPodIPPools. + /// + /// If empty / nil no CiliumPodIPPools will be announced. #[serde(default, skip_serializing_if = "Option::is_none", rename = "podIPPoolSelector")] pub pod_ip_pool_selector: Option, - /// ServiceAdvertisements selects a group of BGP Advertisement(s) to advertise for the selected services. + /// ServiceAdvertisements selects a group of BGP Advertisement(s) to advertise + /// for the selected services. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAdvertisements")] pub service_advertisements: Option>, - /// ServiceSelector selects a group of load balancer services which this virtual router will announce. The loadBalancerClass for a service must be nil or specify a class supported by Cilium, e.g. "io.cilium/bgp-control-plane". Refer to the following document for additional details regarding load balancer classes: - /// https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class - /// If empty / nil no services will be announced. + /// ServiceSelector selects a group of load balancer services which this + /// virtual router will announce. The loadBalancerClass for a service must + /// be nil or specify a class supported by Cilium, e.g. "io.cilium/bgp-control-plane". + /// Refer to the following document for additional details regarding load balancer + /// classes: + /// + /// https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class + /// + /// If empty / nil no services will be announced. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceSelector")] pub service_selector: Option, } -/// CiliumBGPNeighbor is a neighboring peer for use in a CiliumBGPVirtualRouter configuration. +/// CiliumBGPNeighbor is a neighboring peer for use in a +/// CiliumBGPVirtualRouter configuration. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRoutersNeighbors { - /// AdvertisedPathAttributes can be used to apply additional path attributes to selected routes when advertising them to the peer. If empty / nil, no additional path attributes are advertised. + /// AdvertisedPathAttributes can be used to apply additional path attributes + /// to selected routes when advertising them to the peer. + /// If empty / nil, no additional path attributes are advertised. #[serde(default, skip_serializing_if = "Option::is_none", rename = "advertisedPathAttributes")] pub advertised_path_attributes: Option>, - /// AuthSecretRef is the name of the secret to use to fetch a TCP authentication password for this peer. + /// AuthSecretRef is the name of the secret to use to fetch a TCP + /// authentication password for this peer. #[serde(default, skip_serializing_if = "Option::is_none", rename = "authSecretRef")] pub auth_secret_ref: Option, /// ConnectRetryTimeSeconds defines the initial value for the BGP ConnectRetryTimer (RFC 4271, Section 8). #[serde(default, skip_serializing_if = "Option::is_none", rename = "connectRetryTimeSeconds")] pub connect_retry_time_seconds: Option, - /// EBGPMultihopTTL controls the multi-hop feature for eBGP peers. Its value defines the Time To Live (TTL) value used in BGP packets sent to the neighbor. The value 1 implies that eBGP multi-hop feature is disabled (only a single hop is allowed). This field is ignored for iBGP peers. + /// EBGPMultihopTTL controls the multi-hop feature for eBGP peers. + /// Its value defines the Time To Live (TTL) value used in BGP packets sent to the neighbor. + /// The value 1 implies that eBGP multi-hop feature is disabled (only a single hop is allowed). + /// This field is ignored for iBGP peers. #[serde(default, skip_serializing_if = "Option::is_none", rename = "eBGPMultihopTTL")] pub e_bgp_multihop_ttl: Option, - /// Families, if provided, defines a set of AFI/SAFIs the speaker will negotiate with it's peer. - /// If this slice is not provided the default families of IPv6 and IPv4 will be provided. + /// Families, if provided, defines a set of AFI/SAFIs the speaker will + /// negotiate with it's peer. + /// + /// If this slice is not provided the default families of IPv6 and IPv4 will + /// be provided. #[serde(default, skip_serializing_if = "Option::is_none")] pub families: Option>, - /// GracefulRestart defines graceful restart parameters which are negotiated with this neighbor. If empty / nil, the graceful restart capability is disabled. + /// GracefulRestart defines graceful restart parameters which are negotiated + /// with this neighbor. If empty / nil, the graceful restart capability is disabled. #[serde(default, skip_serializing_if = "Option::is_none", rename = "gracefulRestart")] pub graceful_restart: Option, - /// HoldTimeSeconds defines the initial value for the BGP HoldTimer (RFC 4271, Section 4.2). Updating this value will cause a session reset. + /// HoldTimeSeconds defines the initial value for the BGP HoldTimer (RFC 4271, Section 4.2). + /// Updating this value will cause a session reset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "holdTimeSeconds")] pub hold_time_seconds: Option, - /// KeepaliveTimeSeconds defines the initial value for the BGP KeepaliveTimer (RFC 4271, Section 8). It can not be larger than HoldTimeSeconds. Updating this value will cause a session reset. + /// KeepaliveTimeSeconds defines the initial value for the BGP KeepaliveTimer (RFC 4271, Section 8). + /// It can not be larger than HoldTimeSeconds. Updating this value will cause a session reset. #[serde(default, skip_serializing_if = "Option::is_none", rename = "keepAliveTimeSeconds")] pub keep_alive_time_seconds: Option, - /// PeerASN is the ASN of the peer BGP router. Supports extended 32bit ASNs + /// PeerASN is the ASN of the peer BGP router. + /// Supports extended 32bit ASNs #[serde(rename = "peerASN")] pub peer_asn: i64, - /// PeerAddress is the IP address of the peer. This must be in CIDR notation and use a /32 to express a single host. + /// PeerAddress is the IP address of the peer. + /// This must be in CIDR notation and use a /32 to express + /// a single host. #[serde(rename = "peerAddress")] pub peer_address: String, - /// PeerPort is the TCP port of the peer. 1-65535 is the range of valid port numbers that can be specified. If unset, defaults to 179. + /// PeerPort is the TCP port of the peer. 1-65535 is the range of + /// valid port numbers that can be specified. If unset, defaults to 179. #[serde(default, skip_serializing_if = "Option::is_none", rename = "peerPort")] pub peer_port: Option, } -/// CiliumBGPPathAttributes can be used to apply additional path attributes to matched routes when advertising them to a BGP peer. +/// CiliumBGPPathAttributes can be used to apply additional path attributes +/// to matched routes when advertising them to a BGP peer. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRoutersNeighborsAdvertisedPathAttributes { - /// Communities defines a set of community values advertised in the supported BGP Communities path attributes. If nil / not set, no BGP Communities path attribute will be advertised. + /// Communities defines a set of community values advertised in the supported BGP Communities path attributes. + /// If nil / not set, no BGP Communities path attribute will be advertised. #[serde(default, skip_serializing_if = "Option::is_none")] pub communities: Option, - /// LocalPreference defines the preference value advertised in the BGP Local Preference path attribute. As Local Preference is only valid for iBGP peers, this value will be ignored for eBGP peers (no Local Preference path attribute will be advertised). If nil / not set, the default Local Preference of 100 will be advertised in the Local Preference path attribute for iBGP peers. + /// LocalPreference defines the preference value advertised in the BGP Local Preference path attribute. + /// As Local Preference is only valid for iBGP peers, this value will be ignored for eBGP peers + /// (no Local Preference path attribute will be advertised). + /// If nil / not set, the default Local Preference of 100 will be advertised in + /// the Local Preference path attribute for iBGP peers. #[serde(default, skip_serializing_if = "Option::is_none", rename = "localPreference")] pub local_preference: Option, - /// Selector selects a group of objects of the SelectorType resulting into routes that will be announced with the configured Attributes. If nil / not set, all objects of the SelectorType are selected. + /// Selector selects a group of objects of the SelectorType + /// resulting into routes that will be announced with the configured Attributes. + /// If nil / not set, all objects of the SelectorType are selected. #[serde(default, skip_serializing_if = "Option::is_none")] pub selector: Option, - /// SelectorType defines the object type on which the Selector applies: - For "PodCIDR" the Selector matches k8s CiliumNode resources (path attributes apply to routes announced for PodCIDRs of selected CiliumNodes. Only affects routes of cluster scope / Kubernetes IPAM CIDRs, not Multi-Pool IPAM CIDRs. - For "CiliumLoadBalancerIPPool" the Selector matches CiliumLoadBalancerIPPool custom resources (path attributes apply to routes announced for selected CiliumLoadBalancerIPPools). - For "CiliumPodIPPool" the Selector matches CiliumPodIPPool custom resources (path attributes apply to routes announced for allocated CIDRs of selected CiliumPodIPPools). + /// SelectorType defines the object type on which the Selector applies: + /// - For "PodCIDR" the Selector matches k8s CiliumNode resources + /// (path attributes apply to routes announced for PodCIDRs of selected CiliumNodes. + /// Only affects routes of cluster scope / Kubernetes IPAM CIDRs, not Multi-Pool IPAM CIDRs. + /// - For "CiliumLoadBalancerIPPool" the Selector matches CiliumLoadBalancerIPPool custom resources + /// (path attributes apply to routes announced for selected CiliumLoadBalancerIPPools). + /// - For "CiliumPodIPPool" the Selector matches CiliumPodIPPool custom resources + /// (path attributes apply to routes announced for allocated CIDRs of selected CiliumPodIPPools). #[serde(rename = "selectorType")] pub selector_type: CiliumBGPPeeringPolicyVirtualRoutersNeighborsAdvertisedPathAttributesSelectorType, } -/// Communities defines a set of community values advertised in the supported BGP Communities path attributes. If nil / not set, no BGP Communities path attribute will be advertised. +/// Communities defines a set of community values advertised in the supported BGP Communities path attributes. +/// If nil / not set, no BGP Communities path attribute will be advertised. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRoutersNeighborsAdvertisedPathAttributesCommunities { /// Large holds a list of the BGP Large Communities Attribute (RFC 8092) values. @@ -149,35 +206,46 @@ pub struct CiliumBGPPeeringPolicyVirtualRoutersNeighborsAdvertisedPathAttributes /// Standard holds a list of "standard" 32-bit BGP Communities Attribute (RFC 1997) values defined as numeric values. #[serde(default, skip_serializing_if = "Option::is_none")] pub standard: Option>, - /// WellKnown holds a list "standard" 32-bit BGP Communities Attribute (RFC 1997) values defined as well-known string aliases to their numeric values. + /// WellKnown holds a list "standard" 32-bit BGP Communities Attribute (RFC 1997) values defined as + /// well-known string aliases to their numeric values. #[serde(default, skip_serializing_if = "Option::is_none", rename = "wellKnown")] pub well_known: Option>, } -/// Selector selects a group of objects of the SelectorType resulting into routes that will be announced with the configured Attributes. If nil / not set, all objects of the SelectorType are selected. +/// Selector selects a group of objects of the SelectorType +/// resulting into routes that will be announced with the configured Attributes. +/// If nil / not set, all objects of the SelectorType are selected. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRoutersNeighborsAdvertisedPathAttributesSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRoutersNeighborsAdvertisedPathAttributesSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumBGPPeeringPolicyVirtualRoutersNeighborsAdvertisedPathAttributesSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumBGPPeeringPolicyVirtualRoutersNeighborsAdvertisedPathAttributesSelectorMatchExpressionsOperator { In, @@ -186,7 +254,8 @@ pub enum CiliumBGPPeeringPolicyVirtualRoutersNeighborsAdvertisedPathAttributesSe DoesNotExist, } -/// CiliumBGPPathAttributes can be used to apply additional path attributes to matched routes when advertising them to a BGP peer. +/// CiliumBGPPathAttributes can be used to apply additional path attributes +/// to matched routes when advertising them to a BGP peer. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumBGPPeeringPolicyVirtualRoutersNeighborsAdvertisedPathAttributesSelectorType { #[serde(rename = "PodCIDR")] @@ -256,41 +325,55 @@ pub enum CiliumBGPPeeringPolicyVirtualRoutersNeighborsFamiliesSafi { KeyValue, } -/// GracefulRestart defines graceful restart parameters which are negotiated with this neighbor. If empty / nil, the graceful restart capability is disabled. +/// GracefulRestart defines graceful restart parameters which are negotiated +/// with this neighbor. If empty / nil, the graceful restart capability is disabled. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRoutersNeighborsGracefulRestart { /// Enabled flag, when set enables graceful restart capability. pub enabled: bool, - /// RestartTimeSeconds is the estimated time it will take for the BGP session to be re-established with peer after a restart. After this period, peer will remove stale routes. This is described RFC 4724 section 4.2. + /// RestartTimeSeconds is the estimated time it will take for the BGP + /// session to be re-established with peer after a restart. + /// After this period, peer will remove stale routes. This is + /// described RFC 4724 section 4.2. #[serde(default, skip_serializing_if = "Option::is_none", rename = "restartTimeSeconds")] pub restart_time_seconds: Option, } -/// PodIPPoolSelector selects CiliumPodIPPools based on labels. The virtual router will announce allocated CIDRs of matching CiliumPodIPPools. -/// If empty / nil no CiliumPodIPPools will be announced. +/// PodIPPoolSelector selects CiliumPodIPPools based on labels. The virtual +/// router will announce allocated CIDRs of matching CiliumPodIPPools. +/// +/// If empty / nil no CiliumPodIPPools will be announced. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRoutersPodIpPoolSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRoutersPodIpPoolSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumBGPPeeringPolicyVirtualRoutersPodIpPoolSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumBGPPeeringPolicyVirtualRoutersPodIpPoolSelectorMatchExpressionsOperator { In, @@ -299,32 +382,46 @@ pub enum CiliumBGPPeeringPolicyVirtualRoutersPodIpPoolSelectorMatchExpressionsOp DoesNotExist, } -/// ServiceSelector selects a group of load balancer services which this virtual router will announce. The loadBalancerClass for a service must be nil or specify a class supported by Cilium, e.g. "io.cilium/bgp-control-plane". Refer to the following document for additional details regarding load balancer classes: -/// https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class -/// If empty / nil no services will be announced. +/// ServiceSelector selects a group of load balancer services which this +/// virtual router will announce. The loadBalancerClass for a service must +/// be nil or specify a class supported by Cilium, e.g. "io.cilium/bgp-control-plane". +/// Refer to the following document for additional details regarding load balancer +/// classes: +/// +/// https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class +/// +/// If empty / nil no services will be announced. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRoutersServiceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumBGPPeeringPolicyVirtualRoutersServiceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumBGPPeeringPolicyVirtualRoutersServiceSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumBGPPeeringPolicyVirtualRoutersServiceSelectorMatchExpressionsOperator { In, diff --git a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumcidrgroups.rs b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumcidrgroups.rs index c2ec9a117..49ed44934 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumcidrgroups.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumcidrgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumcidrgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumendpointslices.rs b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumendpointslices.rs index 75f40b238..3b88b9b16 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumendpointslices.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumendpointslices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumendpointslices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -21,8 +21,10 @@ pub struct CiliumEndpointSliceEndpoints { /// Name indicate as CiliumEndpoint name. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, - /// NamedPorts List of named Layer 4 port and protocol pairs which will be used in Network Policy specs. - /// swagger:model NamedPorts + /// NamedPorts List of named Layer 4 port and protocol pairs which will be used in Network + /// Policy specs. + /// + /// swagger:model NamedPorts #[serde(default, skip_serializing_if = "Option::is_none", rename = "named-ports")] pub named_ports: Option>, /// EndpointNetworking is the addressing information of an endpoint. @@ -33,13 +35,15 @@ pub struct CiliumEndpointSliceEndpoints { /// EncryptionSpec defines the encryption relevant configuration of a node. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEndpointSliceEndpointsEncryption { - /// Key is the index to the key to use for encryption or 0 if encryption is disabled. + /// Key is the index to the key to use for encryption or 0 if encryption is + /// disabled. #[serde(default, skip_serializing_if = "Option::is_none")] pub key: Option, } -/// Port Layer 4 port / protocol pair -/// swagger:model Port +/// Port Layer 4 port / protocol pair +/// +/// swagger:model Port #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumEndpointSliceEndpointsNamedPorts { /// Optional layer 4 port name @@ -48,7 +52,8 @@ pub struct CiliumEndpointSliceEndpointsNamedPorts { /// Layer 4 port number #[serde(default, skip_serializing_if = "Option::is_none")] pub port: Option, - /// Layer 4 protocol Enum: [TCP UDP SCTP ICMP ICMPV6 ANY] + /// Layer 4 protocol + /// Enum: [TCP UDP SCTP ICMP ICMPV6 ANY] #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, } @@ -58,7 +63,8 @@ pub struct CiliumEndpointSliceEndpointsNamedPorts { pub struct CiliumEndpointSliceEndpointsNetworking { /// IP4/6 addresses assigned to this Endpoint pub addressing: Vec, - /// NodeIP is the IP of the node the endpoint is running on. The IP must be reachable between nodes. + /// NodeIP is the IP of the node the endpoint is running on. The IP must + /// be reachable between nodes. #[serde(default, skip_serializing_if = "Option::is_none")] pub node: Option, } diff --git a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliuml2announcementpolicies.rs b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliuml2announcementpolicies.rs index 35ba286a9..4c6bd52b8 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliuml2announcementpolicies.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliuml2announcementpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliuml2announcementpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -22,49 +22,68 @@ pub struct CiliumL2AnnouncementPolicySpec { /// If true, the external IPs of the services are announced #[serde(default, skip_serializing_if = "Option::is_none", rename = "externalIPs")] pub external_i_ps: Option, - /// A list of regular expressions that express which network interface(s) should be used to announce the services over. If nil, all network interfaces are used. + /// A list of regular expressions that express which network interface(s) should be used + /// to announce the services over. If nil, all network interfaces are used. #[serde(default, skip_serializing_if = "Option::is_none")] pub interfaces: Option>, - /// If true, the loadbalancer IPs of the services are announced - /// If nil this policy applies to all services. + /// If true, the loadbalancer IPs of the services are announced + /// + /// If nil this policy applies to all services. #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancerIPs")] pub load_balancer_i_ps: Option, - /// NodeSelector selects a group of nodes which will announce the IPs for the services selected by the service selector. - /// If nil this policy applies to all nodes. + /// NodeSelector selects a group of nodes which will announce the IPs for + /// the services selected by the service selector. + /// + /// If nil this policy applies to all nodes. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeSelector")] pub node_selector: Option, - /// ServiceSelector selects a set of services which will be announced over L2 networks. The loadBalancerClass for a service must be nil or specify a supported class, e.g. "io.cilium/l2-announcer". Refer to the following document for additional details regarding load balancer classes: - /// https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class - /// If nil this policy applies to all services. + /// ServiceSelector selects a set of services which will be announced over L2 networks. + /// The loadBalancerClass for a service must be nil or specify a supported class, e.g. + /// "io.cilium/l2-announcer". Refer to the following document for additional details + /// regarding load balancer classes: + /// + /// https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class + /// + /// If nil this policy applies to all services. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceSelector")] pub service_selector: Option, } -/// NodeSelector selects a group of nodes which will announce the IPs for the services selected by the service selector. -/// If nil this policy applies to all nodes. +/// NodeSelector selects a group of nodes which will announce the IPs for +/// the services selected by the service selector. +/// +/// If nil this policy applies to all nodes. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumL2AnnouncementPolicyNodeSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumL2AnnouncementPolicyNodeSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumL2AnnouncementPolicyNodeSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumL2AnnouncementPolicyNodeSelectorMatchExpressionsOperator { In, @@ -73,32 +92,45 @@ pub enum CiliumL2AnnouncementPolicyNodeSelectorMatchExpressionsOperator { DoesNotExist, } -/// ServiceSelector selects a set of services which will be announced over L2 networks. The loadBalancerClass for a service must be nil or specify a supported class, e.g. "io.cilium/l2-announcer". Refer to the following document for additional details regarding load balancer classes: -/// https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class -/// If nil this policy applies to all services. +/// ServiceSelector selects a set of services which will be announced over L2 networks. +/// The loadBalancerClass for a service must be nil or specify a supported class, e.g. +/// "io.cilium/l2-announcer". Refer to the following document for additional details +/// regarding load balancer classes: +/// +/// https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class +/// +/// If nil this policy applies to all services. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumL2AnnouncementPolicyServiceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumL2AnnouncementPolicyServiceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumL2AnnouncementPolicyServiceSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumL2AnnouncementPolicyServiceSelectorMatchExpressionsOperator { In, diff --git a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumloadbalancerippools.rs b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumloadbalancerippools.rs index fb06227ab..5eba49da5 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumloadbalancerippools.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumloadbalancerippools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumloadbalancerippools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -11,7 +11,8 @@ mod prelude { } use self::prelude::*; -/// Spec is a human readable description for a BGP load balancer ip pool. +/// Spec is a human readable description for a BGP load balancer +/// ip pool. #[derive(CustomResource, Serialize, Deserialize, Clone, Debug, Default, PartialEq)] #[kube(group = "cilium.io", version = "v2alpha1", kind = "CiliumLoadBalancerIPPool", plural = "ciliumloadbalancerippools")] #[kube(status = "CiliumLoadBalancerIPPoolStatus")] @@ -19,13 +20,16 @@ use self::prelude::*; #[kube(derive="Default")] #[kube(derive="PartialEq")] pub struct CiliumLoadBalancerIPPoolSpec { - /// AllowFirstLastIPs, if set to `Yes` or undefined means that the first and last IPs of each CIDR will be allocatable. If `No`, these IPs will be reserved. This field is ignored for /{31,32} and /{127,128} CIDRs since reserving the first and last IPs would make the CIDRs unusable. + /// AllowFirstLastIPs, if set to `Yes` or undefined means that the first and last IPs of each CIDR will be allocatable. + /// If `No`, these IPs will be reserved. This field is ignored for /{31,32} and /{127,128} CIDRs since + /// reserving the first and last IPs would make the CIDRs unusable. #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowFirstLastIPs")] pub allow_first_last_i_ps: Option, /// Blocks is a list of CIDRs comprising this IP Pool #[serde(default, skip_serializing_if = "Option::is_none")] pub blocks: Option>, - /// Disabled, if set to true means that no new IPs will be allocated from this pool. Existing allocations will not be removed from services. + /// Disabled, if set to true means that no new IPs will be allocated from this pool. + /// Existing allocations will not be removed from services. #[serde(default, skip_serializing_if = "Option::is_none")] pub disabled: Option, /// ServiceSelector selects a set of services which are eligible to receive IPs from this @@ -33,7 +37,8 @@ pub struct CiliumLoadBalancerIPPoolSpec { pub service_selector: Option, } -/// Spec is a human readable description for a BGP load balancer ip pool. +/// Spec is a human readable description for a BGP load balancer +/// ip pool. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumLoadBalancerIPPoolAllowFirstLastIPs { Yes, @@ -57,24 +62,32 @@ pub struct CiliumLoadBalancerIPPoolServiceSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct CiliumLoadBalancerIPPoolServiceSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: CiliumLoadBalancerIPPoolServiceSelectorMatchExpressionsOperator, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum CiliumLoadBalancerIPPoolServiceSelectorMatchExpressionsOperator { In, @@ -83,8 +96,11 @@ pub enum CiliumLoadBalancerIPPoolServiceSelectorMatchExpressionsOperator { DoesNotExist, } -/// Status is the status of the IP Pool. -/// It might be possible for users to define overlapping IP Pools, we can't validate or enforce non-overlapping pools during object creation. The Cilium operator will do this validation and update the status to reflect the ability to allocate IPs from this pool. +/// Status is the status of the IP Pool. +/// +/// It might be possible for users to define overlapping IP Pools, we can't validate or enforce non-overlapping pools +/// during object creation. The Cilium operator will do this validation and update the status to reflect the ability +/// to allocate IPs from this pool. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CiliumLoadBalancerIPPoolStatus { /// Current service state diff --git a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumnodeconfigs.rs b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumnodeconfigs.rs index d79186c44..74010682d 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumnodeconfigs.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumnodeconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumnodeconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumpodippools.rs b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumpodippools.rs index cde946587..c711cd40f 100644 --- a/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumpodippools.rs +++ b/kube-custom-resources-rs/src/cilium_io/v2alpha1/ciliumpodippools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cilium/cilium/cilium.io/v2alpha1/ciliumpodippools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/claudie_io/v1beta1/inputmanifests.rs b/kube-custom-resources-rs/src/claudie_io/v1beta1/inputmanifests.rs index f23f15123..9e1688ea4 100644 --- a/kube-custom-resources-rs/src/claudie_io/v1beta1/inputmanifests.rs +++ b/kube-custom-resources-rs/src/claudie_io/v1beta1/inputmanifests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/berops/claudie/claudie.io/v1beta1/inputmanifests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudformation_linki_space/v1alpha1/stacks.rs b/kube-custom-resources-rs/src/cloudformation_linki_space/v1alpha1/stacks.rs index 065347cb9..e9116744a 100644 --- a/kube-custom-resources-rs/src/cloudformation_linki_space/v1alpha1/stacks.rs +++ b/kube-custom-resources-rs/src/cloudformation_linki_space/v1alpha1/stacks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/linki/cloudformation-operator/cloudformation.linki.space/v1alpha1/stacks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/cachepolicies.rs b/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/cachepolicies.rs index d9dadb1aa..bbc2b331a 100644 --- a/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/cachepolicies.rs +++ b/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/cachepolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/cloudfront-controller/cloudfront.services.k8s.aws/v1alpha1/cachepolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/distributions.rs b/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/distributions.rs index e19258294..9479505b0 100644 --- a/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/distributions.rs +++ b/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/distributions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/cloudfront-controller/cloudfront.services.k8s.aws/v1alpha1/distributions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/functions.rs b/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/functions.rs index c282966b8..9d2d2eb63 100644 --- a/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/functions.rs +++ b/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/functions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/cloudfront-controller/cloudfront.services.k8s.aws/v1alpha1/functions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/originrequestpolicies.rs b/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/originrequestpolicies.rs index 495f53433..05bdcfb53 100644 --- a/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/originrequestpolicies.rs +++ b/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/originrequestpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/cloudfront-controller/cloudfront.services.k8s.aws/v1alpha1/originrequestpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/responseheaderspolicies.rs b/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/responseheaderspolicies.rs index bb5e58354..d256d7d90 100644 --- a/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/responseheaderspolicies.rs +++ b/kube-custom-resources-rs/src/cloudfront_services_k8s_aws/v1alpha1/responseheaderspolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/cloudfront-controller/cloudfront.services.k8s.aws/v1alpha1/responseheaderspolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudtrail_services_k8s_aws/v1alpha1/eventdatastores.rs b/kube-custom-resources-rs/src/cloudtrail_services_k8s_aws/v1alpha1/eventdatastores.rs index 3fb8495eb..4db11f8a8 100644 --- a/kube-custom-resources-rs/src/cloudtrail_services_k8s_aws/v1alpha1/eventdatastores.rs +++ b/kube-custom-resources-rs/src/cloudtrail_services_k8s_aws/v1alpha1/eventdatastores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/cloudtrail-controller/cloudtrail.services.k8s.aws/v1alpha1/eventdatastores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudtrail_services_k8s_aws/v1alpha1/trails.rs b/kube-custom-resources-rs/src/cloudtrail_services_k8s_aws/v1alpha1/trails.rs index 9d0d00c45..dc9390cca 100644 --- a/kube-custom-resources-rs/src/cloudtrail_services_k8s_aws/v1alpha1/trails.rs +++ b/kube-custom-resources-rs/src/cloudtrail_services_k8s_aws/v1alpha1/trails.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/cloudtrail-controller/cloudtrail.services.k8s.aws/v1alpha1/trails.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudwatch_aws_amazon_com/v1alpha1/amazoncloudwatchagents.rs b/kube-custom-resources-rs/src/cloudwatch_aws_amazon_com/v1alpha1/amazoncloudwatchagents.rs index 21992676b..aace5d624 100644 --- a/kube-custom-resources-rs/src/cloudwatch_aws_amazon_com/v1alpha1/amazoncloudwatchagents.rs +++ b/kube-custom-resources-rs/src/cloudwatch_aws_amazon_com/v1alpha1/amazoncloudwatchagents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/amazon-cloudwatch-agent-operator/cloudwatch.aws.amazon.com/v1alpha1/amazoncloudwatchagents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudwatch_aws_amazon_com/v1alpha1/instrumentations.rs b/kube-custom-resources-rs/src/cloudwatch_aws_amazon_com/v1alpha1/instrumentations.rs index 11db43ce4..94e812e76 100644 --- a/kube-custom-resources-rs/src/cloudwatch_aws_amazon_com/v1alpha1/instrumentations.rs +++ b/kube-custom-resources-rs/src/cloudwatch_aws_amazon_com/v1alpha1/instrumentations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/amazon-cloudwatch-agent-operator/cloudwatch.aws.amazon.com/v1alpha1/instrumentations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudwatch_services_k8s_aws/v1alpha1/metricalarms.rs b/kube-custom-resources-rs/src/cloudwatch_services_k8s_aws/v1alpha1/metricalarms.rs index 2ad409448..0085b9e0d 100644 --- a/kube-custom-resources-rs/src/cloudwatch_services_k8s_aws/v1alpha1/metricalarms.rs +++ b/kube-custom-resources-rs/src/cloudwatch_services_k8s_aws/v1alpha1/metricalarms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/cloudwatch-controller/cloudwatch.services.k8s.aws/v1alpha1/metricalarms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cloudwatchlogs_services_k8s_aws/v1alpha1/loggroups.rs b/kube-custom-resources-rs/src/cloudwatchlogs_services_k8s_aws/v1alpha1/loggroups.rs index cabc7c833..8bff9656e 100644 --- a/kube-custom-resources-rs/src/cloudwatchlogs_services_k8s_aws/v1alpha1/loggroups.rs +++ b/kube-custom-resources-rs/src/cloudwatchlogs_services_k8s_aws/v1alpha1/loggroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/cloudwatchlogs-controller/cloudwatchlogs.services.k8s.aws/v1alpha1/loggroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cluster_clusterpedia_io/v1alpha2/clustersyncresources.rs b/kube-custom-resources-rs/src/cluster_clusterpedia_io/v1alpha2/clustersyncresources.rs index 4991cc196..b0a370362 100644 --- a/kube-custom-resources-rs/src/cluster_clusterpedia_io/v1alpha2/clustersyncresources.rs +++ b/kube-custom-resources-rs/src/cluster_clusterpedia_io/v1alpha2/clustersyncresources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusterpedia-io/clusterpedia/cluster.clusterpedia.io/v1alpha2/clustersyncresources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cluster_clusterpedia_io/v1alpha2/pediaclusters.rs b/kube-custom-resources-rs/src/cluster_clusterpedia_io/v1alpha2/pediaclusters.rs index 669265195..b430e930c 100644 --- a/kube-custom-resources-rs/src/cluster_clusterpedia_io/v1alpha2/pediaclusters.rs +++ b/kube-custom-resources-rs/src/cluster_clusterpedia_io/v1alpha2/pediaclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusterpedia-io/clusterpedia/cluster.clusterpedia.io/v1alpha2/pediaclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cluster_ipfs_io/v1alpha1/circuitrelays.rs b/kube-custom-resources-rs/src/cluster_ipfs_io/v1alpha1/circuitrelays.rs index 111afc982..71598c365 100644 --- a/kube-custom-resources-rs/src/cluster_ipfs_io/v1alpha1/circuitrelays.rs +++ b/kube-custom-resources-rs/src/cluster_ipfs_io/v1alpha1/circuitrelays.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ipfs-cluster/ipfs-operator/cluster.ipfs.io/v1alpha1/circuitrelays.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cluster_ipfs_io/v1alpha1/ipfsclusters.rs b/kube-custom-resources-rs/src/cluster_ipfs_io/v1alpha1/ipfsclusters.rs index 5987ab404..6146cc474 100644 --- a/kube-custom-resources-rs/src/cluster_ipfs_io/v1alpha1/ipfsclusters.rs +++ b/kube-custom-resources-rs/src/cluster_ipfs_io/v1alpha1/ipfsclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ipfs-cluster/ipfs-operator/cluster.ipfs.io/v1alpha1/ipfsclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/clusters.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/clusters.rs index 00b4b50dd..67134e881 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/clusters.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/clusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha3/clusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -29,11 +30,11 @@ pub struct ClusterSpec { /// ControlPlaneRef is an optional reference to a provider-specific resource that holds /// the details for provisioning the Control Plane for a Cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "controlPlaneRef")] - pub control_plane_ref: Option, + pub control_plane_ref: Option, /// InfrastructureRef is a reference to a provider-specific resource that holds the details /// for provisioning infrastructure for a cluster in said provider. #[serde(default, skip_serializing_if = "Option::is_none", rename = "infrastructureRef")] - pub infrastructure_ref: Option, + pub infrastructure_ref: Option, /// Paused can be used to prevent controllers from processing the Cluster and all its associated objects. #[serde(default, skip_serializing_if = "Option::is_none")] pub paused: Option, diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinedeployments.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinedeployments.rs index 77100cee1..386dbcabf 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinedeployments.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinedeployments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha3/machinedeployments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -271,7 +272,7 @@ pub struct MachineDeploymentTemplateSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachineDeploymentTemplateSpecInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. /// The default value is 0, meaning that the node can be drained without any time limitations. /// NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` @@ -304,7 +305,7 @@ pub struct MachineDeploymentTemplateSpecBootstrap { /// allow users/operators to specify Bootstrap.Data without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// Data contains the bootstrap data, such as cloud-init details scripts. /// If nil, the Machine should remain in the Pending state. /// diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinehealthchecks.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinehealthchecks.rs index 06d4b90fc..20b709c95 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinehealthchecks.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinehealthchecks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha3/machinehealthchecks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -39,7 +40,7 @@ pub struct MachineHealthCheckSpec { /// creates a new object from the template referenced and hands off remediation of the machine to /// a controller that lives outside of Cluster API. #[serde(default, skip_serializing_if = "Option::is_none", rename = "remediationTemplate")] - pub remediation_template: Option, + pub remediation_template: Option, /// Label selector to match machines whose health will be exercised pub selector: MachineHealthCheckSelector, /// UnhealthyConditions contains a list of the conditions that determine diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinepools.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinepools.rs index 34b52f152..c102b2635 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinepools.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinepools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha3/machinepools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -228,7 +229,7 @@ pub struct MachinePoolTemplateSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachinePoolTemplateSpecInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. /// The default value is 0, meaning that the node can be drained without any time limitations. /// NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` @@ -261,7 +262,7 @@ pub struct MachinePoolTemplateSpecBootstrap { /// allow users/operators to specify Bootstrap.Data without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// Data contains the bootstrap data, such as cloud-init details scripts. /// If nil, the Machine should remain in the Pending state. /// @@ -377,7 +378,7 @@ pub struct MachinePoolStatus { pub infrastructure_ready: Option, /// NodeRefs will point to the corresponding Nodes if it they exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeRefs")] - pub node_refs: Option>, + pub node_refs: Option>, /// ObservedGeneration is the latest generation observed by the controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] pub observed_generation: Option, @@ -400,40 +401,3 @@ pub struct MachinePoolStatus { pub unavailable_replicas: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct MachinePoolStatusNodeRefs { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machines.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machines.rs index 833955863..e2937babd 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machines.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machines.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha3/machines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -32,7 +33,7 @@ pub struct MachineSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachineInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. /// The default value is 0, meaning that the node can be drained without any time limitations. /// NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` @@ -65,7 +66,7 @@ pub struct MachineBootstrap { /// allow users/operators to specify Bootstrap.Data without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// Data contains the bootstrap data, such as cloud-init details scripts. /// If nil, the Machine should remain in the Pending state. /// @@ -213,7 +214,7 @@ pub struct MachineStatus { pub last_updated: Option, /// NodeRef will point to the corresponding Node if it exists. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeRef")] - pub node_ref: Option, + pub node_ref: Option, /// ObservedGeneration is the latest generation observed by the controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] pub observed_generation: Option, diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinesets.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinesets.rs index e03f4afd8..f387eabba 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinesets.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha3/machinesets.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha3/machinesets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -219,7 +220,7 @@ pub struct MachineSetTemplateSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachineSetTemplateSpecInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. /// The default value is 0, meaning that the node can be drained without any time limitations. /// NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` @@ -252,7 +253,7 @@ pub struct MachineSetTemplateSpecBootstrap { /// allow users/operators to specify Bootstrap.Data without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// Data contains the bootstrap data, such as cloud-init details scripts. /// If nil, the Machine should remain in the Pending state. /// diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/clusterclasses.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/clusterclasses.rs index 6d022b2f9..aedfdbc6a 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/clusterclasses.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/clusterclasses.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha4/clusterclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -57,7 +58,7 @@ pub struct ClusterClassControlPlane { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassControlPlaneRef, + pub r#ref: ObjectReference, } /// MachineTemplate defines the metadata and infrastructure information @@ -70,7 +71,7 @@ pub struct ClusterClassControlPlaneMachineInfrastructure { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassControlPlaneMachineInfrastructureRef, + pub r#ref: ObjectReference, } /// Ref is a required reference to a custom resource @@ -180,7 +181,7 @@ pub struct ClusterClassInfrastructure { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassInfrastructureRef, + pub r#ref: ObjectReference, } /// Ref is a required reference to a custom resource @@ -268,7 +269,7 @@ pub struct ClusterClassWorkersMachineDeploymentsTemplateBootstrap { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassWorkersMachineDeploymentsTemplateBootstrapRef, + pub r#ref: ObjectReference, } /// Ref is a required reference to a custom resource @@ -316,7 +317,7 @@ pub struct ClusterClassWorkersMachineDeploymentsTemplateInfrastructure { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassWorkersMachineDeploymentsTemplateInfrastructureRef, + pub r#ref: ObjectReference, } /// Ref is a required reference to a custom resource diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/clusters.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/clusters.rs index beb813546..7652587c1 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/clusters.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/clusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha4/clusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -29,11 +30,11 @@ pub struct ClusterSpec { /// ControlPlaneRef is an optional reference to a provider-specific resource that holds /// the details for provisioning the Control Plane for a Cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "controlPlaneRef")] - pub control_plane_ref: Option, + pub control_plane_ref: Option, /// InfrastructureRef is a reference to a provider-specific resource that holds the details /// for provisioning infrastructure for a cluster in said provider. #[serde(default, skip_serializing_if = "Option::is_none", rename = "infrastructureRef")] - pub infrastructure_ref: Option, + pub infrastructure_ref: Option, /// Paused can be used to prevent controllers from processing the Cluster and all its associated objects. #[serde(default, skip_serializing_if = "Option::is_none")] pub paused: Option, diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinedeployments.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinedeployments.rs index 5d0d08750..7a87e9800 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinedeployments.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinedeployments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha4/machinedeployments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -212,7 +213,7 @@ pub struct MachineDeploymentTemplateSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachineDeploymentTemplateSpecInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. /// The default value is 0, meaning that the node can be drained without any time limitations. /// NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` @@ -245,7 +246,7 @@ pub struct MachineDeploymentTemplateSpecBootstrap { /// allow users/operators to specify Bootstrap.DataSecretName without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// DataSecretName is the name of the secret that stores the bootstrap data script. /// If nil, the Machine should remain in the Pending state. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSecretName")] diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinehealthchecks.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinehealthchecks.rs index a04f19419..29a328d16 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinehealthchecks.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinehealthchecks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha4/machinehealthchecks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -41,7 +42,7 @@ pub struct MachineHealthCheckSpec { /// creates a new object from the template referenced and hands off remediation of the machine to /// a controller that lives outside of Cluster API. #[serde(default, skip_serializing_if = "Option::is_none", rename = "remediationTemplate")] - pub remediation_template: Option, + pub remediation_template: Option, /// Label selector to match machines whose health will be exercised pub selector: MachineHealthCheckSelector, /// UnhealthyConditions contains a list of the conditions that determine diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinepools.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinepools.rs index 1b56c274c..e123d2e78 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinepools.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinepools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha4/machinepools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -92,7 +93,7 @@ pub struct MachinePoolTemplateSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachinePoolTemplateSpecInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. /// The default value is 0, meaning that the node can be drained without any time limitations. /// NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` @@ -125,7 +126,7 @@ pub struct MachinePoolTemplateSpecBootstrap { /// allow users/operators to specify Bootstrap.DataSecretName without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// DataSecretName is the name of the secret that stores the bootstrap data script. /// If nil, the Machine should remain in the Pending state. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSecretName")] @@ -235,7 +236,7 @@ pub struct MachinePoolStatus { pub infrastructure_ready: Option, /// NodeRefs will point to the corresponding Nodes if it they exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeRefs")] - pub node_refs: Option>, + pub node_refs: Option>, /// ObservedGeneration is the latest generation observed by the controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] pub observed_generation: Option, @@ -258,40 +259,3 @@ pub struct MachinePoolStatus { pub unavailable_replicas: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct MachinePoolStatusNodeRefs { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machines.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machines.rs index c12ddb750..5fab2ebd1 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machines.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machines.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha4/machines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -32,7 +33,7 @@ pub struct MachineSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachineInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. /// The default value is 0, meaning that the node can be drained without any time limitations. /// NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` @@ -65,7 +66,7 @@ pub struct MachineBootstrap { /// allow users/operators to specify Bootstrap.DataSecretName without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// DataSecretName is the name of the secret that stores the bootstrap data script. /// If nil, the Machine should remain in the Pending state. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSecretName")] @@ -211,7 +212,7 @@ pub struct MachineStatus { pub node_info: Option, /// NodeRef will point to the corresponding Node if it exists. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeRef")] - pub node_ref: Option, + pub node_ref: Option, /// ObservedGeneration is the latest generation observed by the controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] pub observed_generation: Option, diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinesets.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinesets.rs index 08d8ad416..0671e80d3 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinesets.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1alpha4/machinesets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1alpha4/machinesets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -139,7 +140,7 @@ pub struct MachineSetTemplateSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachineSetTemplateSpecInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDrainTimeout is the total amount of time that the controller will spend on draining a node. /// The default value is 0, meaning that the node can be drained without any time limitations. /// NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` @@ -172,7 +173,7 @@ pub struct MachineSetTemplateSpecBootstrap { /// allow users/operators to specify Bootstrap.DataSecretName without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// DataSecretName is the name of the secret that stores the bootstrap data script. /// If nil, the Machine should remain in the Pending state. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSecretName")] diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/clusterclasses.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/clusterclasses.rs index beefe6ca4..c17913905 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/clusterclasses.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/clusterclasses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1beta1/clusterclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -96,7 +97,7 @@ pub struct ClusterClassControlPlane { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassControlPlaneRef, + pub r#ref: ObjectReference, } /// MachineHealthCheck defines a MachineHealthCheck for this ControlPlaneClass. @@ -129,7 +130,7 @@ pub struct ClusterClassControlPlaneMachineHealthCheck { /// creates a new object from the template referenced and hands off remediation of the machine to /// a controller that lives outside of Cluster API. #[serde(default, skip_serializing_if = "Option::is_none", rename = "remediationTemplate")] - pub remediation_template: Option, + pub remediation_template: Option, /// UnhealthyConditions contains a list of the conditions that determine /// whether a node is considered unhealthy. The conditions are combined in a /// logical OR, i.e. if any of the conditions is met, the node is unhealthy. @@ -207,7 +208,7 @@ pub struct ClusterClassControlPlaneMachineInfrastructure { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassControlPlaneMachineInfrastructureRef, + pub r#ref: ObjectReference, } /// Ref is a required reference to a custom resource @@ -333,7 +334,7 @@ pub struct ClusterClassInfrastructure { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassInfrastructureRef, + pub r#ref: ObjectReference, } /// Ref is a required reference to a custom resource @@ -903,7 +904,7 @@ pub struct ClusterClassWorkersMachineDeploymentsMachineHealthCheck { /// creates a new object from the template referenced and hands off remediation of the machine to /// a controller that lives outside of Cluster API. #[serde(default, skip_serializing_if = "Option::is_none", rename = "remediationTemplate")] - pub remediation_template: Option, + pub remediation_template: Option, /// UnhealthyConditions contains a list of the conditions that determine /// whether a node is considered unhealthy. The conditions are combined in a /// logical OR, i.e. if any of the conditions is met, the node is unhealthy. @@ -1108,7 +1109,7 @@ pub struct ClusterClassWorkersMachineDeploymentsTemplateBootstrap { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassWorkersMachineDeploymentsTemplateBootstrapRef, + pub r#ref: ObjectReference, } /// Ref is a required reference to a custom resource @@ -1156,7 +1157,7 @@ pub struct ClusterClassWorkersMachineDeploymentsTemplateInfrastructure { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassWorkersMachineDeploymentsTemplateInfrastructureRef, + pub r#ref: ObjectReference, } /// Ref is a required reference to a custom resource @@ -1298,7 +1299,7 @@ pub struct ClusterClassWorkersMachinePoolsTemplateBootstrap { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassWorkersMachinePoolsTemplateBootstrapRef, + pub r#ref: ObjectReference, } /// Ref is a required reference to a custom resource @@ -1346,7 +1347,7 @@ pub struct ClusterClassWorkersMachinePoolsTemplateInfrastructure { /// Ref is a required reference to a custom resource /// offered by a provider. #[serde(rename = "ref")] - pub r#ref: ClusterClassWorkersMachinePoolsTemplateInfrastructureRef, + pub r#ref: ObjectReference, } /// Ref is a required reference to a custom resource diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/clusters.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/clusters.rs index b236f67ad..65f206c99 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/clusters.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/clusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1beta1/clusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -30,11 +31,11 @@ pub struct ClusterSpec { /// ControlPlaneRef is an optional reference to a provider-specific resource that holds /// the details for provisioning the Control Plane for a Cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "controlPlaneRef")] - pub control_plane_ref: Option, + pub control_plane_ref: Option, /// InfrastructureRef is a reference to a provider-specific resource that holds the details /// for provisioning infrastructure for a cluster in said provider. #[serde(default, skip_serializing_if = "Option::is_none", rename = "infrastructureRef")] - pub infrastructure_ref: Option, + pub infrastructure_ref: Option, /// Paused can be used to prevent controllers from processing the Cluster and all its associated objects. #[serde(default, skip_serializing_if = "Option::is_none")] pub paused: Option, @@ -271,7 +272,7 @@ pub struct ClusterTopologyControlPlaneMachineHealthCheck { /// creates a new object from the template referenced and hands off remediation of the machine to /// a controller that lives outside of Cluster API. #[serde(default, skip_serializing_if = "Option::is_none", rename = "remediationTemplate")] - pub remediation_template: Option, + pub remediation_template: Option, /// UnhealthyConditions contains a list of the conditions that determine /// whether a node is considered unhealthy. The conditions are combined in a /// logical OR, i.e. if any of the conditions is met, the node is unhealthy. @@ -521,7 +522,7 @@ pub struct ClusterTopologyWorkersMachineDeploymentsMachineHealthCheck { /// creates a new object from the template referenced and hands off remediation of the machine to /// a controller that lives outside of Cluster API. #[serde(default, skip_serializing_if = "Option::is_none", rename = "remediationTemplate")] - pub remediation_template: Option, + pub remediation_template: Option, /// UnhealthyConditions contains a list of the conditions that determine /// whether a node is considered unhealthy. The conditions are combined in a /// logical OR, i.e. if any of the conditions is met, the node is unhealthy. diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinedeployments.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinedeployments.rs index a41471b5b..daac0a139 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinedeployments.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinedeployments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1beta1/machinedeployments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -261,7 +262,7 @@ pub struct MachineDeploymentTemplateSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachineDeploymentTemplateSpecInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine /// hosts after the Machine is marked for deletion. A duration of 0 will retry deletion indefinitely. /// Defaults to 10 seconds. @@ -303,7 +304,7 @@ pub struct MachineDeploymentTemplateSpecBootstrap { /// allow users/operators to specify Bootstrap.DataSecretName without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// DataSecretName is the name of the secret that stores the bootstrap data script. /// If nil, the Machine should remain in the Pending state. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSecretName")] diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinehealthchecks.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinehealthchecks.rs index f1421fc05..2aea148e0 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinehealthchecks.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinehealthchecks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1beta1/machinehealthchecks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -51,7 +52,7 @@ pub struct MachineHealthCheckSpec { /// creates a new object from the template referenced and hands off remediation of the machine to /// a controller that lives outside of Cluster API. #[serde(default, skip_serializing_if = "Option::is_none", rename = "remediationTemplate")] - pub remediation_template: Option, + pub remediation_template: Option, /// Label selector to match machines whose health will be exercised pub selector: MachineHealthCheckSelector, /// UnhealthyConditions contains a list of the conditions that determine diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinepools.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinepools.rs index 2c565160f..c7cb762f4 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinepools.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinepools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1beta1/machinepools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -92,7 +93,7 @@ pub struct MachinePoolTemplateSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachinePoolTemplateSpecInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine /// hosts after the Machine is marked for deletion. A duration of 0 will retry deletion indefinitely. /// Defaults to 10 seconds. @@ -134,7 +135,7 @@ pub struct MachinePoolTemplateSpecBootstrap { /// allow users/operators to specify Bootstrap.DataSecretName without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// DataSecretName is the name of the secret that stores the bootstrap data script. /// If nil, the Machine should remain in the Pending state. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSecretName")] @@ -244,7 +245,7 @@ pub struct MachinePoolStatus { pub infrastructure_ready: Option, /// NodeRefs will point to the corresponding Nodes if it they exist. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeRefs")] - pub node_refs: Option>, + pub node_refs: Option>, /// ObservedGeneration is the latest generation observed by the controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] pub observed_generation: Option, @@ -267,40 +268,3 @@ pub struct MachinePoolStatus { pub unavailable_replicas: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct MachinePoolStatusNodeRefs { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machines.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machines.rs index b712d30d5..90ed2abc3 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machines.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machines.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1beta1/machines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -32,7 +33,7 @@ pub struct MachineSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachineInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine /// hosts after the Machine is marked for deletion. A duration of 0 will retry deletion indefinitely. /// Defaults to 10 seconds. @@ -74,7 +75,7 @@ pub struct MachineBootstrap { /// allow users/operators to specify Bootstrap.DataSecretName without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// DataSecretName is the name of the secret that stores the bootstrap data script. /// If nil, the Machine should remain in the Pending state. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSecretName")] @@ -224,7 +225,7 @@ pub struct MachineStatus { pub node_info: Option, /// NodeRef will point to the corresponding Node if it exists. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeRef")] - pub node_ref: Option, + pub node_ref: Option, /// ObservedGeneration is the latest generation observed by the controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] pub observed_generation: Option, diff --git a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinesets.rs b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinesets.rs index 1a8eda5ef..e9025fb2e 100644 --- a/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinesets.rs +++ b/kube-custom-resources-rs/src/cluster_x_k8s_io/v1beta1/machinesets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/cluster.x-k8s.io/v1beta1/machinesets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -153,7 +154,7 @@ pub struct MachineSetTemplateSpec { /// InfrastructureRef is a required reference to a custom resource /// offered by an infrastructure provider. #[serde(rename = "infrastructureRef")] - pub infrastructure_ref: MachineSetTemplateSpecInfrastructureRef, + pub infrastructure_ref: ObjectReference, /// NodeDeletionTimeout defines how long the controller will attempt to delete the Node that the Machine /// hosts after the Machine is marked for deletion. A duration of 0 will retry deletion indefinitely. /// Defaults to 10 seconds. @@ -195,7 +196,7 @@ pub struct MachineSetTemplateSpecBootstrap { /// allow users/operators to specify Bootstrap.DataSecretName without /// the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// DataSecretName is the name of the secret that stores the bootstrap data script. /// If nil, the Machine should remain in the Pending state. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSecretName")] diff --git a/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/clusterregistrationrequests.rs b/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/clusterregistrationrequests.rs index 8e39ec816..c5231e725 100644 --- a/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/clusterregistrationrequests.rs +++ b/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/clusterregistrationrequests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/clusters.clusternet.io/v1beta1/clusterregistrationrequests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/managedclusters.rs b/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/managedclusters.rs index 50940ff2a..5d95f4504 100644 --- a/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/managedclusters.rs +++ b/kube-custom-resources-rs/src/clusters_clusternet_io/v1beta1/managedclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/clusters.clusternet.io/v1beta1/managedclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplateinstances.rs b/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplateinstances.rs index 798b4557c..5b4f950ee 100644 --- a/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplateinstances.rs +++ b/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplateinstances.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/stolostron/cluster-templates-operator/clustertemplate.openshift.io/v1alpha1/clustertemplateinstances.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplatequotas.rs b/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplatequotas.rs index 52cb6ae59..61fbac0f7 100644 --- a/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplatequotas.rs +++ b/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplatequotas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/stolostron/cluster-templates-operator/clustertemplate.openshift.io/v1alpha1/clustertemplatequotas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplates.rs b/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplates.rs index 3205d7c4f..da83efaf1 100644 --- a/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplates.rs +++ b/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/stolostron/cluster-templates-operator/clustertemplate.openshift.io/v1alpha1/clustertemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplatesetup.rs b/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplatesetup.rs index c01c28448..896535ebd 100644 --- a/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplatesetup.rs +++ b/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/clustertemplatesetup.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/stolostron/cluster-templates-operator/clustertemplate.openshift.io/v1alpha1/clustertemplatesetup.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/config.rs b/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/config.rs index 6fd8ab48f..6f3eecb5f 100644 --- a/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/config.rs +++ b/kube-custom-resources-rs/src/clustertemplate_openshift_io/v1alpha1/config.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/stolostron/cluster-templates-operator/clustertemplate.openshift.io/v1alpha1/config.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/confidentialcontainers_org/v1beta1/ccruntimes.rs b/kube-custom-resources-rs/src/confidentialcontainers_org/v1beta1/ccruntimes.rs index 9b4fd9456..2b8b33114 100644 --- a/kube-custom-resources-rs/src/confidentialcontainers_org/v1beta1/ccruntimes.rs +++ b/kube-custom-resources-rs/src/confidentialcontainers_org/v1beta1/ccruntimes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/confidential-containers/operator/confidentialcontainers.org/v1beta1/ccruntimes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/config_gatekeeper_sh/v1alpha1/configs.rs b/kube-custom-resources-rs/src/config_gatekeeper_sh/v1alpha1/configs.rs index 92088c675..97682ec7a 100644 --- a/kube-custom-resources-rs/src/config_gatekeeper_sh/v1alpha1/configs.rs +++ b/kube-custom-resources-rs/src/config_gatekeeper_sh/v1alpha1/configs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/config.gatekeeper.sh/v1alpha1/configs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/config_grafana_com/v1/projectconfigs.rs b/kube-custom-resources-rs/src/config_grafana_com/v1/projectconfigs.rs index a331e1d49..ba2b21c93 100644 --- a/kube-custom-resources-rs/src/config_grafana_com/v1/projectconfigs.rs +++ b/kube-custom-resources-rs/src/config_grafana_com/v1/projectconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/loki/config.grafana.com/v1/projectconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpretercustomizations.rs b/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpretercustomizations.rs index 77606438c..ffe97f4b8 100644 --- a/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpretercustomizations.rs +++ b/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpretercustomizations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/config.karmada.io/v1alpha1/resourceinterpretercustomizations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -89,7 +89,7 @@ pub struct ResourceInterpreterCustomizationCustomizationsDependencyInterpretatio /// The script should implement a function as follows: /// /// - /// ``` + /// ```text /// luaScript: > /// function GetDependencies(desiredObj) /// dependencies = {} @@ -130,7 +130,7 @@ pub struct ResourceInterpreterCustomizationCustomizationsHealthInterpretation { /// The script should implement a function as follows: /// /// - /// ``` + /// ```text /// luaScript: > /// function InterpretHealth(observedObj) /// if observedObj.status.readyReplicas == observedObj.spec.replicas then @@ -170,7 +170,7 @@ pub struct ResourceInterpreterCustomizationCustomizationsReplicaResource { /// The script should implement a function as follows: /// /// - /// ``` + /// ```text /// luaScript: > /// function GetReplicas(desiredObj) /// replica = desiredObj.spec.replicas @@ -214,7 +214,7 @@ pub struct ResourceInterpreterCustomizationCustomizationsReplicaRevision { /// The script should implement a function as follows: /// /// - /// ``` + /// ```text /// luaScript: > /// function ReviseReplica(desiredObj, desiredReplica) /// desiredObj.spec.replicas = desiredReplica @@ -255,7 +255,7 @@ pub struct ResourceInterpreterCustomizationCustomizationsRetention { /// The script should implement a function as follows: /// /// - /// ``` + /// ```text /// luaScript: > /// function Retain(desiredObj, observedObj) /// desiredObj.spec.fieldFoo = observedObj.spec.fieldFoo @@ -293,7 +293,7 @@ pub struct ResourceInterpreterCustomizationCustomizationsStatusAggregation { /// The script should implement a function as follows: /// /// - /// ``` + /// ```text /// luaScript: > /// function AggregateStatus(desiredObj, statusItems) /// for i = 1, #statusItems do @@ -328,7 +328,7 @@ pub struct ResourceInterpreterCustomizationCustomizationsStatusReflection { /// The script should implement a function as follows: /// /// - /// ``` + /// ```text /// luaScript: > /// function ReflectStatus(observedObj) /// status = {} diff --git a/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpreterwebhookconfigurations.rs b/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpreterwebhookconfigurations.rs index 1de8af890..6d37823f1 100644 --- a/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpreterwebhookconfigurations.rs +++ b/kube-custom-resources-rs/src/config_karmada_io/v1alpha1/resourceinterpreterwebhookconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/config.karmada.io/v1alpha1/resourceinterpreterwebhookconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/config_koordinator_sh/v1alpha1/clustercolocationprofiles.rs b/kube-custom-resources-rs/src/config_koordinator_sh/v1alpha1/clustercolocationprofiles.rs index 0f2bb6a5e..864292d38 100644 --- a/kube-custom-resources-rs/src/config_koordinator_sh/v1alpha1/clustercolocationprofiles.rs +++ b/kube-custom-resources-rs/src/config_koordinator_sh/v1alpha1/clustercolocationprofiles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/koordinator-sh/koordinator/config.koordinator.sh/v1alpha1/clustercolocationprofiles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/config_storageos_com/v1/operatorconfigs.rs b/kube-custom-resources-rs/src/config_storageos_com/v1/operatorconfigs.rs index 376eeb679..4d220db65 100644 --- a/kube-custom-resources-rs/src/config_storageos_com/v1/operatorconfigs.rs +++ b/kube-custom-resources-rs/src/config_storageos_com/v1/operatorconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/storageos/operator/config.storageos.com/v1/operatorconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/control_k8ssandra_io/v1alpha1/cassandratasks.rs b/kube-custom-resources-rs/src/control_k8ssandra_io/v1alpha1/cassandratasks.rs index c47c4370d..86298aa76 100644 --- a/kube-custom-resources-rs/src/control_k8ssandra_io/v1alpha1/cassandratasks.rs +++ b/kube-custom-resources-rs/src/control_k8ssandra_io/v1alpha1/cassandratasks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8ssandra/cass-operator/control.k8ssandra.io/v1alpha1/cassandratasks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -29,7 +30,7 @@ pub struct CassandraTaskSpec { /// Which datacenter this task is targetting. Note, this must be a datacenter which the current cass-operator /// can access #[serde(default, skip_serializing_if = "Option::is_none")] - pub datacenter: Option, + pub datacenter: Option, /// Jobs defines the jobs this task will execute (and their order) #[serde(default, skip_serializing_if = "Option::is_none")] pub jobs: Option>, diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clustercollectedstatuses.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clustercollectedstatuses.rs index c08d2a674..979b6fa31 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clustercollectedstatuses.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clustercollectedstatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/clustercollectedstatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterfederatedobjects.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterfederatedobjects.rs index b26f799df..863ab1f9e 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterfederatedobjects.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterfederatedobjects.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/clusterfederatedobjects.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusteroverridepolicies.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusteroverridepolicies.rs index 54f057f66..cff33567d 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusteroverridepolicies.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusteroverridepolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/clusteroverridepolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterpropagatedversions.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterpropagatedversions.rs index 4c57a75d4..233fd1511 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterpropagatedversions.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterpropagatedversions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/clusterpropagatedversions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterpropagationpolicies.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterpropagationpolicies.rs index a8bf7ca2c..c1183d3fa 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterpropagationpolicies.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/clusterpropagationpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/clusterpropagationpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/collectedstatuses.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/collectedstatuses.rs index 13c5c6869..beb0f3ca3 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/collectedstatuses.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/collectedstatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/collectedstatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedclusters.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedclusters.rs index 56468928c..6faca39c2 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedclusters.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/federatedclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedobjects.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedobjects.rs index 236a679f2..ac77ed8eb 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedobjects.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedobjects.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/federatedobjects.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedtypeconfigs.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedtypeconfigs.rs index adbae8653..62af234e8 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedtypeconfigs.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/federatedtypeconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/federatedtypeconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/overridepolicies.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/overridepolicies.rs index 9ead96076..8896d8e17 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/overridepolicies.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/overridepolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/overridepolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/propagatedversions.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/propagatedversions.rs index beb723755..bd5280186 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/propagatedversions.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/propagatedversions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/propagatedversions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/propagationpolicies.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/propagationpolicies.rs index 2084d6548..7695abed3 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/propagationpolicies.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/propagationpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/propagationpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/schedulerpluginwebhookconfigurations.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/schedulerpluginwebhookconfigurations.rs index 9468e75f8..cc4c66cb4 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/schedulerpluginwebhookconfigurations.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/schedulerpluginwebhookconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/schedulerpluginwebhookconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/schedulingprofiles.rs b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/schedulingprofiles.rs index 914874c71..b7ef44836 100644 --- a/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/schedulingprofiles.rs +++ b/kube-custom-resources-rs/src/core_kubeadmiral_io/v1alpha1/schedulingprofiles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubewharf/kubeadmiral/core.kubeadmiral.io/v1alpha1/schedulingprofiles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_linuxsuren_github_com/v1alpha1/atests.rs b/kube-custom-resources-rs/src/core_linuxsuren_github_com/v1alpha1/atests.rs index f74e42723..194cee699 100644 --- a/kube-custom-resources-rs/src/core_linuxsuren_github_com/v1alpha1/atests.rs +++ b/kube-custom-resources-rs/src/core_linuxsuren_github_com/v1alpha1/atests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/LinuxSuRen/api-testing/core.linuxsuren.github.com/v1alpha1/atests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/core_openfeature_dev/v1alpha1/featureflagconfigurations.rs b/kube-custom-resources-rs/src/core_openfeature_dev/v1alpha1/featureflagconfigurations.rs index 0b07b6c7c..6398c339f 100644 --- a/kube-custom-resources-rs/src/core_openfeature_dev/v1alpha1/featureflagconfigurations.rs +++ b/kube-custom-resources-rs/src/core_openfeature_dev/v1alpha1/featureflagconfigurations.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-feature/open-feature-operator/core.openfeature.dev/v1alpha1/featureflagconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -158,7 +159,7 @@ pub struct FeatureFlagConfigurationServiceProvider { /// Instead of using this type, create a locally provided and used type that is well-focused on your reference. /// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . #[serde(default, skip_serializing_if = "Option::is_none")] - pub credentials: Option, + pub credentials: Option, pub name: FeatureFlagConfigurationServiceProviderName, } diff --git a/kube-custom-resources-rs/src/core_openfeature_dev/v1alpha2/featureflagconfigurations.rs b/kube-custom-resources-rs/src/core_openfeature_dev/v1alpha2/featureflagconfigurations.rs index ebc51acc6..9fbb44fa1 100644 --- a/kube-custom-resources-rs/src/core_openfeature_dev/v1alpha2/featureflagconfigurations.rs +++ b/kube-custom-resources-rs/src/core_openfeature_dev/v1alpha2/featureflagconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-feature/open-feature-operator/core.openfeature.dev/v1alpha2/featureflagconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -224,7 +225,7 @@ pub struct FeatureFlagConfigurationServiceProvider { /// Instead of using this type, create a locally provided and used type that is well-focused on your reference. /// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . #[serde(default, skip_serializing_if = "Option::is_none")] - pub credentials: Option, + pub credentials: Option, pub name: FeatureFlagConfigurationServiceProviderName, } diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseautoscalers.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseautoscalers.rs index e0a163a17..77a9af5ab 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseautoscalers.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseautoscalers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbaseautoscalers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebackuprestores.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebackuprestores.rs index 769e44a25..e4188772f 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebackuprestores.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebackuprestores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasebackuprestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebackups.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebackups.rs index 251238a38..d8f59ba71 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebackups.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasebackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebuckets.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebuckets.rs index 3148d313b..015bc069e 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebuckets.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasebuckets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasebuckets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseclusters.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseclusters.rs index f2b9046fb..c0c5ee191 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseclusters.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbaseclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasecollectiongroups.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasecollectiongroups.rs index 1f140120c..ea30261d2 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasecollectiongroups.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasecollectiongroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasecollectiongroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasecollections.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasecollections.rs index eca8727fd..d195f85f6 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasecollections.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasecollections.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasecollections.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseephemeralbuckets.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseephemeralbuckets.rs index 381e89a91..791936fb7 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseephemeralbuckets.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseephemeralbuckets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbaseephemeralbuckets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasegroups.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasegroups.rs index 6fb4de3c6..f52fc7fb7 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasegroups.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasegroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasegroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasememcachedbuckets.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasememcachedbuckets.rs index 246da49f4..6ff318189 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasememcachedbuckets.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasememcachedbuckets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasememcachedbuckets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasemigrationreplications.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasemigrationreplications.rs index 83b4f1938..5c628bc57 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasemigrationreplications.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasemigrationreplications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasemigrationreplications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasereplications.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasereplications.rs index 1f140bca4..d3eff20ed 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasereplications.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasereplications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasereplications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbaserolebindings.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbaserolebindings.rs index 997c5c60d..de570a719 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbaserolebindings.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbaserolebindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbaserolebindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasescopegroups.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasescopegroups.rs index b7bea2953..d01b1c910 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasescopegroups.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasescopegroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasescopegroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasescopes.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasescopes.rs index 7f4eded62..8be410f25 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbasescopes.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbasescopes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbasescopes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseusers.rs b/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseusers.rs index 4718596e3..dcedb558e 100644 --- a/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseusers.rs +++ b/kube-custom-resources-rs/src/couchbase_com/v2/couchbaseusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/couchbase-partners/helm-charts/couchbase.com/v2/couchbaseusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/craftypath_github_io/v1alpha1/sopssecrets.rs b/kube-custom-resources-rs/src/craftypath_github_io/v1alpha1/sopssecrets.rs index 3063f8ca8..fd1c89faf 100644 --- a/kube-custom-resources-rs/src/craftypath_github_io/v1alpha1/sopssecrets.rs +++ b/kube-custom-resources-rs/src/craftypath_github_io/v1alpha1/sopssecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/craftypath/sops-operator/craftypath.github.io/v1alpha1/sopssecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crane_konveyor_io/v1alpha1/operatorconfigs.rs b/kube-custom-resources-rs/src/crane_konveyor_io/v1alpha1/operatorconfigs.rs index 8613bb430..0618b1ab0 100644 --- a/kube-custom-resources-rs/src/crane_konveyor_io/v1alpha1/operatorconfigs.rs +++ b/kube-custom-resources-rs/src/crane_konveyor_io/v1alpha1/operatorconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/migtools/crane-operator/crane.konveyor.io/v1alpha1/operatorconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgpconfigurations.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgpconfigurations.rs index 07d232861..84eafc4f3 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgpconfigurations.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgpconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/bgpconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgpfilters.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgpfilters.rs index 19347cb1c..ecbed1e4d 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgpfilters.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgpfilters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/bgpfilters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgppeers.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgppeers.rs index 411120c2e..696bd18c2 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgppeers.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/bgppeers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/bgppeers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/blockaffinities.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/blockaffinities.rs index 5b8327f98..0558903d7 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/blockaffinities.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/blockaffinities.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/blockaffinities.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/caliconodestatuses.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/caliconodestatuses.rs index 43cd653ba..a7ead2501 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/caliconodestatuses.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/caliconodestatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/caliconodestatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/clusterinformations.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/clusterinformations.rs index 33a575962..66208b27e 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/clusterinformations.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/clusterinformations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/clusterinformations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/globalnetworksets.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/globalnetworksets.rs index 5fdb892f0..6969196dd 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/globalnetworksets.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/globalnetworksets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/globalnetworksets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/hostendpoints.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/hostendpoints.rs index 68acb6713..98239d7e0 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/hostendpoints.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/hostendpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/hostendpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamblocks.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamblocks.rs index eeec05c8e..9d40f4d3c 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamblocks.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamblocks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/ipamblocks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamconfigs.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamconfigs.rs index c1aa0d858..8ce6c93de 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamconfigs.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/ipamconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamhandles.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamhandles.rs index 3e93d6d36..61d1f9782 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamhandles.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipamhandles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/ipamhandles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ippools.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ippools.rs index 344fab671..fa3cf728c 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ippools.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ippools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/ippools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipreservations.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipreservations.rs index 020d24cfd..4ab354322 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipreservations.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/ipreservations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/ipreservations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/kubecontrollersconfigurations.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/kubecontrollersconfigurations.rs index f873f4d15..df85813b4 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/kubecontrollersconfigurations.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/kubecontrollersconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/kubecontrollersconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/networksets.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/networksets.rs index 5d657208e..02b03bc9b 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/networksets.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/networksets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/networksets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/tiers.rs b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/tiers.rs index 741f92e8c..d86f4866a 100644 --- a/kube-custom-resources-rs/src/crd_projectcalico_org/v1/tiers.rs +++ b/kube-custom-resources-rs/src/crd_projectcalico_org/v1/tiers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcalico/calico/crd.projectcalico.org/v1/tiers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/alluxioruntimes.rs b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/alluxioruntimes.rs index 3e332e7cb..e7e64a8e7 100644 --- a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/alluxioruntimes.rs +++ b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/alluxioruntimes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluid-cloudnative/fluid/data.fluid.io/v1alpha1/alluxioruntimes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/databackups.rs b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/databackups.rs index f909a2691..a3a12aee0 100644 --- a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/databackups.rs +++ b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/databackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluid-cloudnative/fluid/data.fluid.io/v1alpha1/databackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/dataloads.rs b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/dataloads.rs index a9f2c5702..d79030be9 100644 --- a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/dataloads.rs +++ b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/dataloads.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluid-cloudnative/fluid/data.fluid.io/v1alpha1/dataloads.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/datasets.rs b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/datasets.rs index befb41877..31cef2be4 100644 --- a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/datasets.rs +++ b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/datasets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluid-cloudnative/fluid/data.fluid.io/v1alpha1/datasets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/goosefsruntimes.rs b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/goosefsruntimes.rs index 221e2dd9d..ff40bfa48 100644 --- a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/goosefsruntimes.rs +++ b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/goosefsruntimes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluid-cloudnative/fluid/data.fluid.io/v1alpha1/goosefsruntimes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/jindoruntimes.rs b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/jindoruntimes.rs index e9175f4bc..26fc8000d 100644 --- a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/jindoruntimes.rs +++ b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/jindoruntimes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluid-cloudnative/fluid/data.fluid.io/v1alpha1/jindoruntimes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/juicefsruntimes.rs b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/juicefsruntimes.rs index 5f8f52c0f..4342092ba 100644 --- a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/juicefsruntimes.rs +++ b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/juicefsruntimes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluid-cloudnative/fluid/data.fluid.io/v1alpha1/juicefsruntimes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/thinruntimeprofiles.rs b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/thinruntimeprofiles.rs index a7de88286..fdc042fe6 100644 --- a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/thinruntimeprofiles.rs +++ b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/thinruntimeprofiles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluid-cloudnative/fluid/data.fluid.io/v1alpha1/thinruntimeprofiles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/thinruntimes.rs b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/thinruntimes.rs index 4c2d4504b..c54dbc45a 100644 --- a/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/thinruntimes.rs +++ b/kube-custom-resources-rs/src/data_fluid_io/v1alpha1/thinruntimes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluid-cloudnative/fluid/data.fluid.io/v1alpha1/thinruntimes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/databases_schemahero_io/v1alpha4/databases.rs b/kube-custom-resources-rs/src/databases_schemahero_io/v1alpha4/databases.rs index 6ac88c4ab..f88553cc6 100644 --- a/kube-custom-resources-rs/src/databases_schemahero_io/v1alpha4/databases.rs +++ b/kube-custom-resources-rs/src/databases_schemahero_io/v1alpha4/databases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/schemahero/schemahero/databases.schemahero.io/v1alpha4/databases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/databases_spotahome_com/v1/redisfailovers.rs b/kube-custom-resources-rs/src/databases_spotahome_com/v1/redisfailovers.rs index 46636a50c..322c2f7c5 100644 --- a/kube-custom-resources-rs/src/databases_spotahome_com/v1/redisfailovers.rs +++ b/kube-custom-resources-rs/src/databases_spotahome_com/v1/redisfailovers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/spotahome/redis-operator/databases.spotahome.com/v1/redisfailovers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogagents.rs b/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogagents.rs index ba8a150b3..6d6e20c0e 100644 --- a/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogagents.rs +++ b/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogagents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/DataDog/datadog-operator/datadoghq.com/v1alpha1/datadogagents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogmetrics.rs b/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogmetrics.rs index e0574d9e7..2f898f76e 100644 --- a/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogmetrics.rs +++ b/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogmetrics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/DataDog/datadog-operator/datadoghq.com/v1alpha1/datadogmetrics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogmonitors.rs b/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogmonitors.rs index 6ffab0303..92f773075 100644 --- a/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogmonitors.rs +++ b/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogmonitors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/DataDog/datadog-operator/datadoghq.com/v1alpha1/datadogmonitors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogslos.rs b/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogslos.rs index 0950fa003..876a031bf 100644 --- a/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogslos.rs +++ b/kube-custom-resources-rs/src/datadoghq_com/v1alpha1/datadogslos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/DataDog/datadog-operator/datadoghq.com/v1alpha1/datadogslos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/datadoghq_com/v2alpha1/datadogagents.rs b/kube-custom-resources-rs/src/datadoghq_com/v2alpha1/datadogagents.rs index 2155e12ef..c2476738f 100644 --- a/kube-custom-resources-rs/src/datadoghq_com/v2alpha1/datadogagents.rs +++ b/kube-custom-resources-rs/src/datadoghq_com/v2alpha1/datadogagents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/DataDog/datadog-operator/datadoghq.com/v2alpha1/datadogagents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/actionsets.rs b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/actionsets.rs index 8171dd387..b307c5bdc 100644 --- a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/actionsets.rs +++ b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/actionsets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/dataprotection.kubeblocks.io/v1alpha1/actionsets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backuppolicies.rs b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backuppolicies.rs index d88674def..d157cdf95 100644 --- a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backuppolicies.rs +++ b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backuppolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/dataprotection.kubeblocks.io/v1alpha1/backuppolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backuprepos.rs b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backuprepos.rs index 41be869d0..be9b55433 100644 --- a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backuprepos.rs +++ b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backuprepos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/dataprotection.kubeblocks.io/v1alpha1/backuprepos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backups.rs b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backups.rs index 634dd6e11..10b144ef3 100644 --- a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backups.rs +++ b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/dataprotection.kubeblocks.io/v1alpha1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -156,7 +157,7 @@ pub struct BackupStatusActions { pub name: Option, /// The object reference for the action. #[serde(default, skip_serializing_if = "Option::is_none", rename = "objectRef")] - pub object_ref: Option, + pub object_ref: Option, /// The current phase of the action. #[serde(default, skip_serializing_if = "Option::is_none")] pub phase: Option, diff --git a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backupschedules.rs b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backupschedules.rs index 3b6e61bf4..69cfa8d2e 100644 --- a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backupschedules.rs +++ b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/backupschedules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/dataprotection.kubeblocks.io/v1alpha1/backupschedules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/restores.rs b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/restores.rs index b6b438ca2..d50cf9c76 100644 --- a/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/restores.rs +++ b/kube-custom-resources-rs/src/dataprotection_kubeblocks_io/v1alpha1/restores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/dataprotection.kubeblocks.io/v1alpha1/restores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/designer_kaoto_io/v1alpha1/kaotoes.rs b/kube-custom-resources-rs/src/designer_kaoto_io/v1alpha1/kaotoes.rs index de240d464..3dfc1fdab 100644 --- a/kube-custom-resources-rs/src/designer_kaoto_io/v1alpha1/kaotoes.rs +++ b/kube-custom-resources-rs/src/designer_kaoto_io/v1alpha1/kaotoes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/KaotoIO/kaoto-operator/designer.kaoto.io/v1alpha1/kaotoes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/devices_kubeedge_io/v1alpha2/devicemodels.rs b/kube-custom-resources-rs/src/devices_kubeedge_io/v1alpha2/devicemodels.rs index b0ee2e576..68deb6f82 100644 --- a/kube-custom-resources-rs/src/devices_kubeedge_io/v1alpha2/devicemodels.rs +++ b/kube-custom-resources-rs/src/devices_kubeedge_io/v1alpha2/devicemodels.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/devices.kubeedge.io/v1alpha2/devicemodels.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/devices_kubeedge_io/v1alpha2/devices.rs b/kube-custom-resources-rs/src/devices_kubeedge_io/v1alpha2/devices.rs index eb731fcae..908b88964 100644 --- a/kube-custom-resources-rs/src/devices_kubeedge_io/v1alpha2/devices.rs +++ b/kube-custom-resources-rs/src/devices_kubeedge_io/v1alpha2/devices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/devices.kubeedge.io/v1alpha2/devices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/devices_kubeedge_io/v1beta1/devicemodels.rs b/kube-custom-resources-rs/src/devices_kubeedge_io/v1beta1/devicemodels.rs index f97b6d7a7..0ee8ffaae 100644 --- a/kube-custom-resources-rs/src/devices_kubeedge_io/v1beta1/devicemodels.rs +++ b/kube-custom-resources-rs/src/devices_kubeedge_io/v1beta1/devicemodels.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/devices.kubeedge.io/v1beta1/devicemodels.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/devices_kubeedge_io/v1beta1/devices.rs b/kube-custom-resources-rs/src/devices_kubeedge_io/v1beta1/devices.rs index fc6085d1d..ff096c421 100644 --- a/kube-custom-resources-rs/src/devices_kubeedge_io/v1beta1/devices.rs +++ b/kube-custom-resources-rs/src/devices_kubeedge_io/v1beta1/devices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/devices.kubeedge.io/v1beta1/devices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/devops_kubesphere_io/v1alpha1/releasercontrollers.rs b/kube-custom-resources-rs/src/devops_kubesphere_io/v1alpha1/releasercontrollers.rs index 19f65d8d1..3fdaf84bc 100644 --- a/kube-custom-resources-rs/src/devops_kubesphere_io/v1alpha1/releasercontrollers.rs +++ b/kube-custom-resources-rs/src/devops_kubesphere_io/v1alpha1/releasercontrollers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubesphere-sigs/ks-releaser-operator/devops.kubesphere.io/v1alpha1/releasercontrollers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/devops_kubesphere_io/v1alpha1/releasers.rs b/kube-custom-resources-rs/src/devops_kubesphere_io/v1alpha1/releasers.rs index 851dac128..2cdb642dd 100644 --- a/kube-custom-resources-rs/src/devops_kubesphere_io/v1alpha1/releasers.rs +++ b/kube-custom-resources-rs/src/devops_kubesphere_io/v1alpha1/releasers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubesphere-sigs/ks-releaser-operator/devops.kubesphere.io/v1alpha1/releasers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_coreos_com/v1/authcodes.rs b/kube-custom-resources-rs/src/dex_coreos_com/v1/authcodes.rs index c59f40997..6ef6d3320 100644 --- a/kube-custom-resources-rs/src/dex_coreos_com/v1/authcodes.rs +++ b/kube-custom-resources-rs/src/dex_coreos_com/v1/authcodes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dexidp/dex/dex.coreos.com/v1/authcodes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_coreos_com/v1/authrequests.rs b/kube-custom-resources-rs/src/dex_coreos_com/v1/authrequests.rs index 00b4cb046..877dd23ed 100644 --- a/kube-custom-resources-rs/src/dex_coreos_com/v1/authrequests.rs +++ b/kube-custom-resources-rs/src/dex_coreos_com/v1/authrequests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dexidp/dex/dex.coreos.com/v1/authrequests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_coreos_com/v1/connectors.rs b/kube-custom-resources-rs/src/dex_coreos_com/v1/connectors.rs index 4ff23ba46..118f16fb7 100644 --- a/kube-custom-resources-rs/src/dex_coreos_com/v1/connectors.rs +++ b/kube-custom-resources-rs/src/dex_coreos_com/v1/connectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dexidp/dex/dex.coreos.com/v1/connectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_coreos_com/v1/devicerequests.rs b/kube-custom-resources-rs/src/dex_coreos_com/v1/devicerequests.rs index 8383229cf..0d7e2af57 100644 --- a/kube-custom-resources-rs/src/dex_coreos_com/v1/devicerequests.rs +++ b/kube-custom-resources-rs/src/dex_coreos_com/v1/devicerequests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dexidp/dex/dex.coreos.com/v1/devicerequests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_coreos_com/v1/devicetokens.rs b/kube-custom-resources-rs/src/dex_coreos_com/v1/devicetokens.rs index 3860291a7..a2cfe5008 100644 --- a/kube-custom-resources-rs/src/dex_coreos_com/v1/devicetokens.rs +++ b/kube-custom-resources-rs/src/dex_coreos_com/v1/devicetokens.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dexidp/dex/dex.coreos.com/v1/devicetokens.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_coreos_com/v1/oauth2clients.rs b/kube-custom-resources-rs/src/dex_coreos_com/v1/oauth2clients.rs index 8b8085c55..746372a64 100644 --- a/kube-custom-resources-rs/src/dex_coreos_com/v1/oauth2clients.rs +++ b/kube-custom-resources-rs/src/dex_coreos_com/v1/oauth2clients.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dexidp/dex/dex.coreos.com/v1/oauth2clients.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_coreos_com/v1/offlinesessionses.rs b/kube-custom-resources-rs/src/dex_coreos_com/v1/offlinesessionses.rs index dbf194be5..49bd8511a 100644 --- a/kube-custom-resources-rs/src/dex_coreos_com/v1/offlinesessionses.rs +++ b/kube-custom-resources-rs/src/dex_coreos_com/v1/offlinesessionses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dexidp/dex/dex.coreos.com/v1/offlinesessionses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_coreos_com/v1/passwords.rs b/kube-custom-resources-rs/src/dex_coreos_com/v1/passwords.rs index b26cfb6c1..43a3f247d 100644 --- a/kube-custom-resources-rs/src/dex_coreos_com/v1/passwords.rs +++ b/kube-custom-resources-rs/src/dex_coreos_com/v1/passwords.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dexidp/dex/dex.coreos.com/v1/passwords.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_coreos_com/v1/refreshtokens.rs b/kube-custom-resources-rs/src/dex_coreos_com/v1/refreshtokens.rs index cf6326b6a..b9eea510a 100644 --- a/kube-custom-resources-rs/src/dex_coreos_com/v1/refreshtokens.rs +++ b/kube-custom-resources-rs/src/dex_coreos_com/v1/refreshtokens.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dexidp/dex/dex.coreos.com/v1/refreshtokens.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_coreos_com/v1/signingkeies.rs b/kube-custom-resources-rs/src/dex_coreos_com/v1/signingkeies.rs index 05e3305ea..942f70fb9 100644 --- a/kube-custom-resources-rs/src/dex_coreos_com/v1/signingkeies.rs +++ b/kube-custom-resources-rs/src/dex_coreos_com/v1/signingkeies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/dexidp/dex/dex.coreos.com/v1/signingkeies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexidentityproviders.rs b/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexidentityproviders.rs index 0a2228e91..4972a789a 100644 --- a/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexidentityproviders.rs +++ b/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexidentityproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gpu-ninja/dex-operator/dex.gpu-ninja.com/v1alpha1/dexidentityproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexoauth2clients.rs b/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexoauth2clients.rs index ed72664f3..689f607ba 100644 --- a/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexoauth2clients.rs +++ b/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexoauth2clients.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gpu-ninja/dex-operator/dex.gpu-ninja.com/v1alpha1/dexoauth2clients.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexusers.rs b/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexusers.rs index a9c302fd7..4762d6671 100644 --- a/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexusers.rs +++ b/kube-custom-resources-rs/src/dex_gpu_ninja_com/v1alpha1/dexusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gpu-ninja/dex-operator/dex.gpu-ninja.com/v1alpha1/dexusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/digitalis_io/v1/valssecrets.rs b/kube-custom-resources-rs/src/digitalis_io/v1/valssecrets.rs index ad6647e49..454dd4c61 100644 --- a/kube-custom-resources-rs/src/digitalis_io/v1/valssecrets.rs +++ b/kube-custom-resources-rs/src/digitalis_io/v1/valssecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/digitalis-io/vals-operator/digitalis.io/v1/valssecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/digitalis_io/v1beta1/dbsecrets.rs b/kube-custom-resources-rs/src/digitalis_io/v1beta1/dbsecrets.rs index 11216bb0d..fef70997f 100644 --- a/kube-custom-resources-rs/src/digitalis_io/v1beta1/dbsecrets.rs +++ b/kube-custom-resources-rs/src/digitalis_io/v1beta1/dbsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/digitalis-io/vals-operator/digitalis.io/v1beta1/dbsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbclusters.rs b/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbclusters.rs index 496a2e5a2..900cbbeb9 100644 --- a/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbclusters.rs +++ b/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/documentdb-controller/documentdb.services.k8s.aws/v1alpha1/dbclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbinstances.rs b/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbinstances.rs index 50660bbd4..1fcfd85f5 100644 --- a/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbinstances.rs +++ b/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbinstances.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/documentdb-controller/documentdb.services.k8s.aws/v1alpha1/dbinstances.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbsubnetgroups.rs b/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbsubnetgroups.rs index 2aeb74c9b..6aa90c52c 100644 --- a/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbsubnetgroups.rs +++ b/kube-custom-resources-rs/src/documentdb_services_k8s_aws/v1alpha1/dbsubnetgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/documentdb-controller/documentdb.services.k8s.aws/v1alpha1/dbsubnetgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/druid_apache_org/v1alpha1/druids.rs b/kube-custom-resources-rs/src/druid_apache_org/v1alpha1/druids.rs index 8b90aa063..8141ee409 100644 --- a/kube-custom-resources-rs/src/druid_apache_org/v1alpha1/druids.rs +++ b/kube-custom-resources-rs/src/druid_apache_org/v1alpha1/druids.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/datainfrahq/druid-operator/druid.apache.org/v1alpha1/druids.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -59,7 +60,7 @@ pub struct DruidSpec { pub env_from: Option>, /// ExtraCommonConfig References to ConfigMaps holding more configuration files to mount to the common configuration path. #[serde(default, skip_serializing_if = "Option::is_none", rename = "extraCommonConfig")] - pub extra_common_config: Option>, + pub extra_common_config: Option>, /// ForceDeleteStsPodOnError Delete the StatefulSet's pods if the StatefulSet is set to ordered ready. issue: https://github.com/kubernetes/kubernetes/issues/67250 doc: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#forced-rollback #[serde(default, skip_serializing_if = "Option::is_none", rename = "forceDeleteStsPodOnError")] pub force_delete_sts_pod_on_error: Option, @@ -1075,33 +1076,6 @@ pub struct DruidEnvFromSecretRef { pub optional: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct DruidExtraCommonConfig { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct DruidImagePullSecrets { diff --git a/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/backups.rs b/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/backups.rs index 93f242b77..41f260856 100644 --- a/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/backups.rs +++ b/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/dynamodb-controller/dynamodb.services.k8s.aws/v1alpha1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/globaltables.rs b/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/globaltables.rs index e8ab047b5..5d5c05e92 100644 --- a/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/globaltables.rs +++ b/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/globaltables.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/dynamodb-controller/dynamodb.services.k8s.aws/v1alpha1/globaltables.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/tables.rs b/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/tables.rs index 2352310de..06e058b82 100644 --- a/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/tables.rs +++ b/kube-custom-resources-rs/src/dynamodb_services_k8s_aws/v1alpha1/tables.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/dynamodb-controller/dynamodb.services.k8s.aws/v1alpha1/tables.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/dhcpoptions.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/dhcpoptions.rs index f3519f007..ea569cdf3 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/dhcpoptions.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/dhcpoptions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/dhcpoptions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/elasticipaddresses.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/elasticipaddresses.rs index 90c2e562e..c2e80bec6 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/elasticipaddresses.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/elasticipaddresses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/elasticipaddresses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/instances.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/instances.rs index 87473df69..d68d2e317 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/instances.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/instances.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/instances.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/internetgateways.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/internetgateways.rs index 41688c1ad..682a001e8 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/internetgateways.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/internetgateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/internetgateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/natgateways.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/natgateways.rs index acedff91c..11b3f11c8 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/natgateways.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/natgateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/natgateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/routetables.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/routetables.rs index 08738f2b2..05f587a5c 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/routetables.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/routetables.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/routetables.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/securitygroups.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/securitygroups.rs index a32dfdc30..b731b9760 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/securitygroups.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/securitygroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/securitygroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/subnets.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/subnets.rs index 8ef61ab8a..a12db550d 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/subnets.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/subnets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/subnets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/transitgateways.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/transitgateways.rs index f2fc3f2f3..4ef7724bb 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/transitgateways.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/transitgateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/transitgateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/vpcendpoints.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/vpcendpoints.rs index 4c9b22496..d74beb135 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/vpcendpoints.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/vpcendpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/vpcendpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/vpcs.rs b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/vpcs.rs index 057ed2c40..039fe727a 100644 --- a/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/vpcs.rs +++ b/kube-custom-resources-rs/src/ec2_services_k8s_aws/v1alpha1/vpcs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ec2-controller/ec2.services.k8s.aws/v1alpha1/vpcs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ecr_services_k8s_aws/v1alpha1/pullthroughcacherules.rs b/kube-custom-resources-rs/src/ecr_services_k8s_aws/v1alpha1/pullthroughcacherules.rs index 19dcc01e0..512c056a3 100644 --- a/kube-custom-resources-rs/src/ecr_services_k8s_aws/v1alpha1/pullthroughcacherules.rs +++ b/kube-custom-resources-rs/src/ecr_services_k8s_aws/v1alpha1/pullthroughcacherules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ecr-controller/ecr.services.k8s.aws/v1alpha1/pullthroughcacherules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ecr_services_k8s_aws/v1alpha1/repositories.rs b/kube-custom-resources-rs/src/ecr_services_k8s_aws/v1alpha1/repositories.rs index 15029d9c5..c78dca8ef 100644 --- a/kube-custom-resources-rs/src/ecr_services_k8s_aws/v1alpha1/repositories.rs +++ b/kube-custom-resources-rs/src/ecr_services_k8s_aws/v1alpha1/repositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/ecr-controller/ecr.services.k8s.aws/v1alpha1/repositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/accesspoints.rs b/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/accesspoints.rs index ece857bc5..464cbdc47 100644 --- a/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/accesspoints.rs +++ b/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/accesspoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/efs-controller/efs.services.k8s.aws/v1alpha1/accesspoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/filesystems.rs b/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/filesystems.rs index c8aa641dd..1c7d04c75 100644 --- a/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/filesystems.rs +++ b/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/filesystems.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/efs-controller/efs.services.k8s.aws/v1alpha1/filesystems.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/mounttargets.rs b/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/mounttargets.rs index de3265f75..500273801 100644 --- a/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/mounttargets.rs +++ b/kube-custom-resources-rs/src/efs_services_k8s_aws/v1alpha1/mounttargets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/efs-controller/efs.services.k8s.aws/v1alpha1/mounttargets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/addons.rs b/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/addons.rs index b14d145e3..b6647f6e2 100644 --- a/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/addons.rs +++ b/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/addons.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/eks-controller/eks.services.k8s.aws/v1alpha1/addons.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/clusters.rs b/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/clusters.rs index d8b8190fe..6ce44f136 100644 --- a/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/clusters.rs +++ b/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/clusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/eks-controller/eks.services.k8s.aws/v1alpha1/clusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/fargateprofiles.rs b/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/fargateprofiles.rs index f7e4f5390..c5dca49bb 100644 --- a/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/fargateprofiles.rs +++ b/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/fargateprofiles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/eks-controller/eks.services.k8s.aws/v1alpha1/fargateprofiles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/nodegroups.rs b/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/nodegroups.rs index f63dee046..3814c2a06 100644 --- a/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/nodegroups.rs +++ b/kube-custom-resources-rs/src/eks_services_k8s_aws/v1alpha1/nodegroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/eks-controller/eks.services.k8s.aws/v1alpha1/nodegroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cacheparametergroups.rs b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cacheparametergroups.rs index 6890e5aae..29ebb0cde 100644 --- a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cacheparametergroups.rs +++ b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cacheparametergroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/cacheparametergroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cachesubnetgroups.rs b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cachesubnetgroups.rs index 410b32c54..e65ce410d 100644 --- a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cachesubnetgroups.rs +++ b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/cachesubnetgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/cachesubnetgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/replicationgroups.rs b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/replicationgroups.rs index 1b92771cb..b3756ea71 100644 --- a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/replicationgroups.rs +++ b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/replicationgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/replicationgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/snapshots.rs b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/snapshots.rs index 11bc369aa..ce96696dc 100644 --- a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/snapshots.rs +++ b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/snapshots.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/snapshots.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/usergroups.rs b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/usergroups.rs index 570295b05..b43d35c16 100644 --- a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/usergroups.rs +++ b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/usergroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/usergroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/users.rs b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/users.rs index f32059ebf..246720062 100644 --- a/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/users.rs +++ b/kube-custom-resources-rs/src/elasticache_services_k8s_aws/v1alpha1/users.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/elasticache-controller/elasticache.services.k8s.aws/v1alpha1/users.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elasticsearch_k8s_elastic_co/v1/elasticsearches.rs b/kube-custom-resources-rs/src/elasticsearch_k8s_elastic_co/v1/elasticsearches.rs index fd901ee89..062aa24c1 100644 --- a/kube-custom-resources-rs/src/elasticsearch_k8s_elastic_co/v1/elasticsearches.rs +++ b/kube-custom-resources-rs/src/elasticsearch_k8s_elastic_co/v1/elasticsearches.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/elasticsearch.k8s.elastic.co/v1/elasticsearches.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elasticsearch_k8s_elastic_co/v1beta1/elasticsearches.rs b/kube-custom-resources-rs/src/elasticsearch_k8s_elastic_co/v1beta1/elasticsearches.rs index a1b3c43b0..720e98b9b 100644 --- a/kube-custom-resources-rs/src/elasticsearch_k8s_elastic_co/v1beta1/elasticsearches.rs +++ b/kube-custom-resources-rs/src/elasticsearch_k8s_elastic_co/v1beta1/elasticsearches.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/elasticsearch.k8s.elastic.co/v1beta1/elasticsearches.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elbv2_k8s_aws/v1alpha1/targetgroupbindings.rs b/kube-custom-resources-rs/src/elbv2_k8s_aws/v1alpha1/targetgroupbindings.rs index a9d7a6761..922b21946 100644 --- a/kube-custom-resources-rs/src/elbv2_k8s_aws/v1alpha1/targetgroupbindings.rs +++ b/kube-custom-resources-rs/src/elbv2_k8s_aws/v1alpha1/targetgroupbindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/aws-load-balancer-controller/elbv2.k8s.aws/v1alpha1/targetgroupbindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elbv2_k8s_aws/v1beta1/ingressclassparams.rs b/kube-custom-resources-rs/src/elbv2_k8s_aws/v1beta1/ingressclassparams.rs index 183336185..bd645b3e5 100644 --- a/kube-custom-resources-rs/src/elbv2_k8s_aws/v1beta1/ingressclassparams.rs +++ b/kube-custom-resources-rs/src/elbv2_k8s_aws/v1beta1/ingressclassparams.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/aws-load-balancer-controller/elbv2.k8s.aws/v1beta1/ingressclassparams.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/elbv2_k8s_aws/v1beta1/targetgroupbindings.rs b/kube-custom-resources-rs/src/elbv2_k8s_aws/v1beta1/targetgroupbindings.rs index 49c0a2d13..987554b52 100644 --- a/kube-custom-resources-rs/src/elbv2_k8s_aws/v1beta1/targetgroupbindings.rs +++ b/kube-custom-resources-rs/src/elbv2_k8s_aws/v1beta1/targetgroupbindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/aws-load-balancer-controller/elbv2.k8s.aws/v1beta1/targetgroupbindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/emrcontainers_services_k8s_aws/v1alpha1/jobruns.rs b/kube-custom-resources-rs/src/emrcontainers_services_k8s_aws/v1alpha1/jobruns.rs index 77a39e774..1e92e7315 100644 --- a/kube-custom-resources-rs/src/emrcontainers_services_k8s_aws/v1alpha1/jobruns.rs +++ b/kube-custom-resources-rs/src/emrcontainers_services_k8s_aws/v1alpha1/jobruns.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/emrcontainers-controller/emrcontainers.services.k8s.aws/v1alpha1/jobruns.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/emrcontainers_services_k8s_aws/v1alpha1/virtualclusters.rs b/kube-custom-resources-rs/src/emrcontainers_services_k8s_aws/v1alpha1/virtualclusters.rs index 3ccc8b827..6a9530cbc 100644 --- a/kube-custom-resources-rs/src/emrcontainers_services_k8s_aws/v1alpha1/virtualclusters.rs +++ b/kube-custom-resources-rs/src/emrcontainers_services_k8s_aws/v1alpha1/virtualclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/emrcontainers-controller/emrcontainers.services.k8s.aws/v1alpha1/virtualclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ensembleoss_io/v1/clusters.rs b/kube-custom-resources-rs/src/ensembleoss_io/v1/clusters.rs index 966ba219d..6ac94db88 100644 --- a/kube-custom-resources-rs/src/ensembleoss_io/v1/clusters.rs +++ b/kube-custom-resources-rs/src/ensembleoss_io/v1/clusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/teseraio/ensemble/ensembleoss.io/v1/clusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ensembleoss_io/v1/resources.rs b/kube-custom-resources-rs/src/ensembleoss_io/v1/resources.rs index d30d65c90..3998eb126 100644 --- a/kube-custom-resources-rs/src/ensembleoss_io/v1/resources.rs +++ b/kube-custom-resources-rs/src/ensembleoss_io/v1/resources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/teseraio/ensemble/ensembleoss.io/v1/resources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/enterprisesearch_k8s_elastic_co/v1/enterprisesearches.rs b/kube-custom-resources-rs/src/enterprisesearch_k8s_elastic_co/v1/enterprisesearches.rs index 73ad9aa60..ae580a685 100644 --- a/kube-custom-resources-rs/src/enterprisesearch_k8s_elastic_co/v1/enterprisesearches.rs +++ b/kube-custom-resources-rs/src/enterprisesearch_k8s_elastic_co/v1/enterprisesearches.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/enterprisesearch.k8s.elastic.co/v1/enterprisesearches.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/enterprisesearch_k8s_elastic_co/v1beta1/enterprisesearches.rs b/kube-custom-resources-rs/src/enterprisesearch_k8s_elastic_co/v1beta1/enterprisesearches.rs index 254c0196b..42ebd7e04 100644 --- a/kube-custom-resources-rs/src/enterprisesearch_k8s_elastic_co/v1beta1/enterprisesearches.rs +++ b/kube-custom-resources-rs/src/enterprisesearch_k8s_elastic_co/v1beta1/enterprisesearches.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/enterprisesearch.k8s.elastic.co/v1beta1/enterprisesearches.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/backupstorages.rs b/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/backupstorages.rs index c015c03e9..5fe9c829d 100644 --- a/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/backupstorages.rs +++ b/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/backupstorages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/everest-operator/everest.percona.com/v1alpha1/backupstorages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusterbackups.rs b/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusterbackups.rs index 3025073ea..8f60eee84 100644 --- a/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusterbackups.rs +++ b/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusterbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/everest-operator/everest.percona.com/v1alpha1/databaseclusterbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusterrestores.rs b/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusterrestores.rs index 453b0804d..88634bd02 100644 --- a/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusterrestores.rs +++ b/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusterrestores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/everest-operator/everest.percona.com/v1alpha1/databaseclusterrestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusters.rs b/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusters.rs index 63ecca34c..31f7bc11c 100644 --- a/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusters.rs +++ b/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/databaseclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/everest-operator/everest.percona.com/v1alpha1/databaseclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -362,6 +362,9 @@ pub struct DatabaseClusterStatus { /// Message is extra information about the cluster #[serde(default, skip_serializing_if = "Option::is_none")] pub message: Option, + /// ObservedGeneration is the most recent generation observed for this DatabaseCluster. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "observedGeneration")] + pub observed_generation: Option, /// Port is the port where the cluster can be reached #[serde(default, skip_serializing_if = "Option::is_none")] pub port: Option, diff --git a/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/monitoringconfigs.rs b/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/monitoringconfigs.rs index 32cab3dbd..0676dd0f3 100644 --- a/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/monitoringconfigs.rs +++ b/kube-custom-resources-rs/src/everest_percona_com/v1alpha1/monitoringconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/everest-operator/everest.percona.com/v1alpha1/monitoringconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/execution_furiko_io/v1alpha1/jobconfigs.rs b/kube-custom-resources-rs/src/execution_furiko_io/v1alpha1/jobconfigs.rs index fc2c837b0..6a4bcbf85 100644 --- a/kube-custom-resources-rs/src/execution_furiko_io/v1alpha1/jobconfigs.rs +++ b/kube-custom-resources-rs/src/execution_furiko_io/v1alpha1/jobconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/furiko-io/furiko/execution.furiko.io/v1alpha1/jobconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/execution_furiko_io/v1alpha1/jobs.rs b/kube-custom-resources-rs/src/execution_furiko_io/v1alpha1/jobs.rs index e63b1b47e..5eb002f4a 100644 --- a/kube-custom-resources-rs/src/execution_furiko_io/v1alpha1/jobs.rs +++ b/kube-custom-resources-rs/src/execution_furiko_io/v1alpha1/jobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/furiko-io/furiko/execution.furiko.io/v1alpha1/jobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/executor_testkube_io/v1/executors.rs b/kube-custom-resources-rs/src/executor_testkube_io/v1/executors.rs index 9fc64e1fc..5a50ce096 100644 --- a/kube-custom-resources-rs/src/executor_testkube_io/v1/executors.rs +++ b/kube-custom-resources-rs/src/executor_testkube_io/v1/executors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/executor.testkube.io/v1/executors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/executor_testkube_io/v1/webhooks.rs b/kube-custom-resources-rs/src/executor_testkube_io/v1/webhooks.rs index a9364a1f8..ffdea01b0 100644 --- a/kube-custom-resources-rs/src/executor_testkube_io/v1/webhooks.rs +++ b/kube-custom-resources-rs/src/executor_testkube_io/v1/webhooks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/executor.testkube.io/v1/webhooks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/expansion_gatekeeper_sh/v1alpha1/expansiontemplate.rs b/kube-custom-resources-rs/src/expansion_gatekeeper_sh/v1alpha1/expansiontemplate.rs index 57729d325..ec9c434c4 100644 --- a/kube-custom-resources-rs/src/expansion_gatekeeper_sh/v1alpha1/expansiontemplate.rs +++ b/kube-custom-resources-rs/src/expansion_gatekeeper_sh/v1alpha1/expansiontemplate.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/expansion.gatekeeper.sh/v1alpha1/expansiontemplate.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/expansion_gatekeeper_sh/v1beta1/expansiontemplate.rs b/kube-custom-resources-rs/src/expansion_gatekeeper_sh/v1beta1/expansiontemplate.rs index c005d8766..f1b0795a1 100644 --- a/kube-custom-resources-rs/src/expansion_gatekeeper_sh/v1beta1/expansiontemplate.rs +++ b/kube-custom-resources-rs/src/expansion_gatekeeper_sh/v1beta1/expansiontemplate.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/expansion.gatekeeper.sh/v1beta1/expansiontemplate.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/extensions_istio_io/v1alpha1/wasmplugins.rs b/kube-custom-resources-rs/src/extensions_istio_io/v1alpha1/wasmplugins.rs index ed373f504..dee8771b5 100644 --- a/kube-custom-resources-rs/src/extensions_istio_io/v1alpha1/wasmplugins.rs +++ b/kube-custom-resources-rs/src/extensions_istio_io/v1alpha1/wasmplugins.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/extensions.istio.io/v1alpha1/wasmplugins.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/extensions_kubeblocks_io/v1alpha1/addons.rs b/kube-custom-resources-rs/src/extensions_kubeblocks_io/v1alpha1/addons.rs index d926cce27..598b8bf47 100644 --- a/kube-custom-resources-rs/src/extensions_kubeblocks_io/v1alpha1/addons.rs +++ b/kube-custom-resources-rs/src/extensions_kubeblocks_io/v1alpha1/addons.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/extensions.kubeblocks.io/v1alpha1/addons.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/clustersecretstores.rs b/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/clustersecretstores.rs index 616740eed..00419764b 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/clustersecretstores.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/clustersecretstores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/clustersecretstores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/externalsecrets.rs b/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/externalsecrets.rs index dcc5207f5..525d60145 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/externalsecrets.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/externalsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/externalsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/secretstores.rs b/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/secretstores.rs index 100f41b30..d0dbd85dc 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/secretstores.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1alpha1/secretstores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/external-secrets/external-secrets/external-secrets.io/v1alpha1/secretstores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clusterexternalsecrets.rs b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clusterexternalsecrets.rs index a48c31b3d..28ca0c70c 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clusterexternalsecrets.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clusterexternalsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/clusterexternalsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clustersecretstores.rs b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clustersecretstores.rs index e7554804a..f77aa8d55 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clustersecretstores.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/clustersecretstores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/clustersecretstores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/externalsecrets.rs b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/externalsecrets.rs index bab3866b6..ad1d87640 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/externalsecrets.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/externalsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/externalsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/secretstores.rs b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/secretstores.rs index 0fed96ead..97816fed2 100644 --- a/kube-custom-resources-rs/src/external_secrets_io/v1beta1/secretstores.rs +++ b/kube-custom-resources-rs/src/external_secrets_io/v1beta1/secretstores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/external-secrets/external-secrets/external-secrets.io/v1beta1/secretstores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/externaldata_gatekeeper_sh/v1alpha1/providers.rs b/kube-custom-resources-rs/src/externaldata_gatekeeper_sh/v1alpha1/providers.rs index 27548a824..836dfb5e8 100644 --- a/kube-custom-resources-rs/src/externaldata_gatekeeper_sh/v1alpha1/providers.rs +++ b/kube-custom-resources-rs/src/externaldata_gatekeeper_sh/v1alpha1/providers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/externaldata.gatekeeper.sh/v1alpha1/providers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/externaldata_gatekeeper_sh/v1beta1/providers.rs b/kube-custom-resources-rs/src/externaldata_gatekeeper_sh/v1beta1/providers.rs index ae2b5dc79..06bf5890c 100644 --- a/kube-custom-resources-rs/src/externaldata_gatekeeper_sh/v1beta1/providers.rs +++ b/kube-custom-resources-rs/src/externaldata_gatekeeper_sh/v1beta1/providers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/externaldata.gatekeeper.sh/v1beta1/providers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/externaldns_k8s_io/v1alpha1/dnsendpoints.rs b/kube-custom-resources-rs/src/externaldns_k8s_io/v1alpha1/dnsendpoints.rs index 4908902e4..a40919210 100644 --- a/kube-custom-resources-rs/src/externaldns_k8s_io/v1alpha1/dnsendpoints.rs +++ b/kube-custom-resources-rs/src/externaldns_k8s_io/v1alpha1/dnsendpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/external-dns/externaldns.k8s.io/v1alpha1/dnsendpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/externaldns_nginx_org/v1/dnsendpoints.rs b/kube-custom-resources-rs/src/externaldns_nginx_org/v1/dnsendpoints.rs index 114174eb5..ddbc6ebff 100644 --- a/kube-custom-resources-rs/src/externaldns_nginx_org/v1/dnsendpoints.rs +++ b/kube-custom-resources-rs/src/externaldns_nginx_org/v1/dnsendpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/externaldns.nginx.org/v1/dnsendpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flagger_app/v1beta1/alertproviders.rs b/kube-custom-resources-rs/src/flagger_app/v1beta1/alertproviders.rs index eb5c09800..80f4bf97d 100644 --- a/kube-custom-resources-rs/src/flagger_app/v1beta1/alertproviders.rs +++ b/kube-custom-resources-rs/src/flagger_app/v1beta1/alertproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/flagger/flagger.app/v1beta1/alertproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flagger_app/v1beta1/canaries.rs b/kube-custom-resources-rs/src/flagger_app/v1beta1/canaries.rs index 922d3cba0..d92f4e902 100644 --- a/kube-custom-resources-rs/src/flagger_app/v1beta1/canaries.rs +++ b/kube-custom-resources-rs/src/flagger_app/v1beta1/canaries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/flagger/flagger.app/v1beta1/canaries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flagger_app/v1beta1/metrictemplates.rs b/kube-custom-resources-rs/src/flagger_app/v1beta1/metrictemplates.rs index 4cd9bf743..2a7bd5505 100644 --- a/kube-custom-resources-rs/src/flagger_app/v1beta1/metrictemplates.rs +++ b/kube-custom-resources-rs/src/flagger_app/v1beta1/metrictemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/flagger/flagger.app/v1beta1/metrictemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flink_apache_org/v1beta1/flinkdeployments.rs b/kube-custom-resources-rs/src/flink_apache_org/v1beta1/flinkdeployments.rs index c7427463d..b3873d4db 100644 --- a/kube-custom-resources-rs/src/flink_apache_org/v1beta1/flinkdeployments.rs +++ b/kube-custom-resources-rs/src/flink_apache_org/v1beta1/flinkdeployments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/flink-kubernetes-operator/flink.apache.org/v1beta1/flinkdeployments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flink_apache_org/v1beta1/flinksessionjobs.rs b/kube-custom-resources-rs/src/flink_apache_org/v1beta1/flinksessionjobs.rs index 0478ca2ff..a909fc235 100644 --- a/kube-custom-resources-rs/src/flink_apache_org/v1beta1/flinksessionjobs.rs +++ b/kube-custom-resources-rs/src/flink_apache_org/v1beta1/flinksessionjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/flink-kubernetes-operator/flink.apache.org/v1beta1/flinksessionjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flow_volcano_sh/v1alpha1/jobflows.rs b/kube-custom-resources-rs/src/flow_volcano_sh/v1alpha1/jobflows.rs index 74e74b2d7..a3800129a 100644 --- a/kube-custom-resources-rs/src/flow_volcano_sh/v1alpha1/jobflows.rs +++ b/kube-custom-resources-rs/src/flow_volcano_sh/v1alpha1/jobflows.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/volcano-sh/volcano/flow.volcano.sh/v1alpha1/jobflows.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flow_volcano_sh/v1alpha1/jobtemplates.rs b/kube-custom-resources-rs/src/flow_volcano_sh/v1alpha1/jobtemplates.rs index 9fe3f5e8a..4c7e68b5a 100644 --- a/kube-custom-resources-rs/src/flow_volcano_sh/v1alpha1/jobtemplates.rs +++ b/kube-custom-resources-rs/src/flow_volcano_sh/v1alpha1/jobtemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/volcano-sh/volcano/flow.volcano.sh/v1alpha1/jobtemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flows_netobserv_io/v1alpha1/flowcollectors.rs b/kube-custom-resources-rs/src/flows_netobserv_io/v1alpha1/flowcollectors.rs index 095822084..15e9118bc 100644 --- a/kube-custom-resources-rs/src/flows_netobserv_io/v1alpha1/flowcollectors.rs +++ b/kube-custom-resources-rs/src/flows_netobserv_io/v1alpha1/flowcollectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1alpha1/flowcollectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flows_netobserv_io/v1beta1/flowcollectors.rs b/kube-custom-resources-rs/src/flows_netobserv_io/v1beta1/flowcollectors.rs index 65ea121ec..afe8e5e84 100644 --- a/kube-custom-resources-rs/src/flows_netobserv_io/v1beta1/flowcollectors.rs +++ b/kube-custom-resources-rs/src/flows_netobserv_io/v1beta1/flowcollectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1beta1/flowcollectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -172,8 +172,9 @@ pub struct FlowCollectorAgentEbpfFlowFilter { #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, /// DestPorts defines the destination ports to filter flows by. - /// To filter a single port, set a single port as an integer value. For example destPorts: 80. - /// To filter a range of ports, use a "start-end" range, string format. For example destPorts: "80-100". + /// To filter a single port, set a single port as an integer value. For example, destPorts: 80. + /// To filter a range of ports, use a "start-end" range in string format. For example, destPorts: "80-100". + /// To filter two ports, use a "port1,port2" in string format. For example, `ports: "80,100"`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "destPorts")] pub dest_ports: Option, /// Direction defines the direction to filter flows by. @@ -193,16 +194,18 @@ pub struct FlowCollectorAgentEbpfFlowFilter { #[serde(default, skip_serializing_if = "Option::is_none", rename = "peerIP")] pub peer_ip: Option, /// Ports defines the ports to filter flows by. it can be user for either source or destination ports. - /// To filter a single port, set a single port as an integer value. For example ports: 80. - /// To filter a range of ports, use a "start-end" range, string format. For example ports: "80-10 + /// To filter a single port, set a single port as an integer value. For example, ports: 80. + /// To filter a range of ports, use a "start-end" range in string format. For example, ports: "80-100". + /// To filter two ports, use a "port1,port2" in string format. For example, `ports: "80,100"`. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option, /// Protocol defines the protocol to filter flows by. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, /// SourcePorts defines the source ports to filter flows by. - /// To filter a single port, set a single port as an integer value. For example sourcePorts: 80. - /// To filter a range of ports, use a "start-end" range, string format. For example sourcePorts: "80-100". + /// To filter a single port, set a single port as an integer value. For example, sourcePorts: 80. + /// To filter a range of ports, use a "start-end" range in string format. For example, sourcePorts: "80-100". + /// To filter two ports, use a "port1,port2" in string format. For example, `ports: "80,100"`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "sourcePorts")] pub source_ports: Option, /// `tcpFlags` defines the TCP flags to filter flows by. @@ -321,7 +324,7 @@ pub struct FlowCollectorAgentEbpfMetricsServer { } /// TLS configuration. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct FlowCollectorAgentEbpfMetricsServerTls { /// `insecureSkipVerify` allows skipping client-side verification of the provided certificate. /// If set to `true`, the `providedCaFile` field is ignored. @@ -337,8 +340,8 @@ pub struct FlowCollectorAgentEbpfMetricsServerTls { /// - `DISABLED` (default) to not configure TLS for the endpoint. /// - `PROVIDED` to manually provide cert file and a key file. [Unsupported (*)]. /// - `AUTO` to use OpenShift auto generated certificate using annotations. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "type")] - pub r#type: Option, + #[serde(rename = "type")] + pub r#type: FlowCollectorAgentEbpfMetricsServerTlsType, } /// TLS configuration when `type` is set to `PROVIDED`. @@ -416,11 +419,9 @@ pub struct FlowCollectorAgentEbpfResources { /// Claims lists the names of resources, defined in spec.resourceClaims, /// that are used by this container. /// - /// /// This is an alpha field and requires enabling the /// DynamicResourceAllocation feature gate. /// - /// /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, @@ -443,6 +444,11 @@ pub struct FlowCollectorAgentEbpfResourcesClaims { /// the Pod where this field is used. It makes that resource available /// inside a container. pub name: String, + /// Request is the name chosen for a request in the referenced claim. + /// If empty, everything from the claim is made available, otherwise + /// only the result of this request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub request: Option, } /// `ipfix` [deprecated (*)] - describes the settings related to the IPFIX-based flow reporter when `spec.agent.type` @@ -822,11 +828,9 @@ pub struct FlowCollectorConsolePluginResources { /// Claims lists the names of resources, defined in spec.resourceClaims, /// that are used by this container. /// - /// /// This is an alpha field and requires enabling the /// DynamicResourceAllocation feature gate. /// - /// /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, @@ -849,6 +853,11 @@ pub struct FlowCollectorConsolePluginResourcesClaims { /// the Pod where this field is used. It makes that resource available /// inside a container. pub name: String, + /// Request is the name chosen for a request in the referenced claim. + /// If empty, everything from the claim is made available, otherwise + /// only the result of this request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub request: Option, } /// Defines the desired state of the FlowCollector resource. @@ -1901,7 +1910,7 @@ pub struct FlowCollectorProcessorMetricsServer { } /// TLS configuration. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct FlowCollectorProcessorMetricsServerTls { /// `insecureSkipVerify` allows skipping client-side verification of the provided certificate. /// If set to `true`, the `providedCaFile` field is ignored. @@ -1917,8 +1926,8 @@ pub struct FlowCollectorProcessorMetricsServerTls { /// - `DISABLED` (default) to not configure TLS for the endpoint. /// - `PROVIDED` to manually provide cert file and a key file. [Unsupported (*)]. /// - `AUTO` to use OpenShift auto generated certificate using annotations. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "type")] - pub r#type: Option, + #[serde(rename = "type")] + pub r#type: FlowCollectorProcessorMetricsServerTlsType, } /// TLS configuration when `type` is set to `PROVIDED`. @@ -1996,11 +2005,9 @@ pub struct FlowCollectorProcessorResources { /// Claims lists the names of resources, defined in spec.resourceClaims, /// that are used by this container. /// - /// /// This is an alpha field and requires enabling the /// DynamicResourceAllocation feature gate. /// - /// /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, @@ -2023,6 +2030,11 @@ pub struct FlowCollectorProcessorResourcesClaims { /// the Pod where this field is used. It makes that resource available /// inside a container. pub name: String, + /// Request is the name chosen for a request in the referenced claim. + /// If empty, everything from the claim is made available, otherwise + /// only the result of this request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub request: Option, } /// `subnetLabels` allows to define custom labels on subnets and IPs or to enable automatic labelling of recognized subnets in OpenShift. @@ -2044,11 +2056,9 @@ pub struct FlowCollectorProcessorSubnetLabels { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct FlowCollectorProcessorSubnetLabelsCustomLabels { /// List of CIDRs, such as `["1.2.3.4/32"]`. - #[serde(default, skip_serializing_if = "Option::is_none")] - pub cidrs: Option>, + pub cidrs: Vec, /// Label name, used to flag matching flows. - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, + pub name: String, } /// `prometheus` defines Prometheus settings, such as querier configuration used to fetch metrics from the Console plugin. @@ -2060,7 +2070,7 @@ pub struct FlowCollectorPrometheus { } /// Prometheus querying configuration, such as client settings, used in the Console plugin. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct FlowCollectorPrometheusQuerier { /// Set `enable` to `true` to make the Console plugin querying flow metrics from Prometheus instead of Loki whenever possible. /// The Console plugin can use either Loki or Prometheus as a data source for metrics (see also `spec.loki`), or both. @@ -2076,8 +2086,7 @@ pub struct FlowCollectorPrometheusQuerier { /// `mode` must be set according to the type of Prometheus installation that stores NetObserv metrics:
/// - Use `Auto` to try configuring automatically. In OpenShift, it uses the Thanos querier from OpenShift Cluster Monitoring
/// - Use `Manual` for a manual setup
- #[serde(default, skip_serializing_if = "Option::is_none")] - pub mode: Option, + pub mode: FlowCollectorPrometheusQuerierMode, /// `timeout` is the read timeout for console plugin queries to Prometheus. /// A timeout of zero means no timeout. #[serde(default, skip_serializing_if = "Option::is_none")] diff --git a/kube-custom-resources-rs/src/flows_netobserv_io/v1beta2/flowcollectors.rs b/kube-custom-resources-rs/src/flows_netobserv_io/v1beta2/flowcollectors.rs index 4d2acf4a1..d55905562 100644 --- a/kube-custom-resources-rs/src/flows_netobserv_io/v1beta2/flowcollectors.rs +++ b/kube-custom-resources-rs/src/flows_netobserv_io/v1beta2/flowcollectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/netobserv/network-observability-operator/flows.netobserv.io/v1beta2/flowcollectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -391,7 +391,7 @@ pub struct FlowCollectorAgentEbpfAdvancedSchedulingAffinityPodAffinityPreferredD /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -402,7 +402,7 @@ pub struct FlowCollectorAgentEbpfAdvancedSchedulingAffinityPodAffinityPreferredD /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -512,7 +512,7 @@ pub struct FlowCollectorAgentEbpfAdvancedSchedulingAffinityPodAffinityRequiredDu /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -523,7 +523,7 @@ pub struct FlowCollectorAgentEbpfAdvancedSchedulingAffinityPodAffinityRequiredDu /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -664,7 +664,7 @@ pub struct FlowCollectorAgentEbpfAdvancedSchedulingAffinityPodAntiAffinityPrefer /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -675,7 +675,7 @@ pub struct FlowCollectorAgentEbpfAdvancedSchedulingAffinityPodAntiAffinityPrefer /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -785,7 +785,7 @@ pub struct FlowCollectorAgentEbpfAdvancedSchedulingAffinityPodAntiAffinityRequir /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -796,7 +796,7 @@ pub struct FlowCollectorAgentEbpfAdvancedSchedulingAffinityPodAntiAffinityRequir /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -927,8 +927,9 @@ pub struct FlowCollectorAgentEbpfFlowFilter { #[serde(default, skip_serializing_if = "Option::is_none")] pub cidr: Option, /// `destPorts` defines the destination ports to filter flows by. - /// To filter a single port, set a single port as an integer value. For example: `destPorts: 80`. - /// To filter a range of ports, use a "start-end" range in string format. For example: `destPorts: "80-100"`. + /// To filter a single port, set a single port as an integer value. For example, `destPorts: 80`. + /// To filter a range of ports, use a "start-end" range in string format. For example, `destPorts: "80-100"`. + /// To filter two ports, use a "port1,port2" in string format. For example, `ports: "80,100"`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "destPorts")] pub dest_ports: Option, /// `direction` defines the direction to filter flows by. @@ -948,16 +949,18 @@ pub struct FlowCollectorAgentEbpfFlowFilter { #[serde(default, skip_serializing_if = "Option::is_none", rename = "peerIP")] pub peer_ip: Option, /// `ports` defines the ports to filter flows by. It is used both for source and destination ports. - /// To filter a single port, set a single port as an integer value. For example: `ports: 80`. - /// To filter a range of ports, use a "start-end" range in string format. For example: `ports: "80-100"`. + /// To filter a single port, set a single port as an integer value. For example, `ports: 80`. + /// To filter a range of ports, use a "start-end" range in string format. For example, `ports: "80-100"`. + /// To filter two ports, use a "port1,port2" in string format. For example, `ports: "80,100"`. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option, /// `protocol` defines the protocol to filter flows by. #[serde(default, skip_serializing_if = "Option::is_none")] pub protocol: Option, /// `sourcePorts` defines the source ports to filter flows by. - /// To filter a single port, set a single port as an integer value. For example: `sourcePorts: 80`. - /// To filter a range of ports, use a "start-end" range in string format. For example: `sourcePorts: "80-100"`. + /// To filter a single port, set a single port as an integer value. For example, `sourcePorts: 80`. + /// To filter a range of ports, use a "start-end" range in string format. For example, `sourcePorts: "80-100"`. + /// To filter two ports, use a "port1,port2" in string format. For example, `ports: "80,100"`. #[serde(default, skip_serializing_if = "Option::is_none", rename = "sourcePorts")] pub source_ports: Option, /// `tcpFlags` defines the TCP flags to filter flows by. @@ -1076,7 +1079,7 @@ pub struct FlowCollectorAgentEbpfMetricsServer { } /// TLS configuration. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct FlowCollectorAgentEbpfMetricsServerTls { /// `insecureSkipVerify` allows skipping client-side verification of the provided certificate. /// If set to `true`, the `providedCaFile` field is ignored. @@ -1092,8 +1095,8 @@ pub struct FlowCollectorAgentEbpfMetricsServerTls { /// - `Disabled` (default) to not configure TLS for the endpoint. /// - `Provided` to manually provide cert file and a key file. [Unsupported (*)]. /// - `Auto` to use OpenShift auto generated certificate using annotations. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "type")] - pub r#type: Option, + #[serde(rename = "type")] + pub r#type: FlowCollectorAgentEbpfMetricsServerTlsType, } /// TLS configuration when `type` is set to `Provided`. @@ -1168,11 +1171,9 @@ pub struct FlowCollectorAgentEbpfResources { /// Claims lists the names of resources, defined in spec.resourceClaims, /// that are used by this container. /// - /// /// This is an alpha field and requires enabling the /// DynamicResourceAllocation feature gate. /// - /// /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, @@ -1195,6 +1196,11 @@ pub struct FlowCollectorAgentEbpfResourcesClaims { /// the Pod where this field is used. It makes that resource available /// inside a container. pub name: String, + /// Request is the name chosen for a request in the referenced claim. + /// If empty, everything from the claim is made available, otherwise + /// only the result of this request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub request: Option, } /// `ipfix` [deprecated (*)] - describes the settings related to the IPFIX-based flow reporter when `spec.agent.type` @@ -1549,7 +1555,7 @@ pub struct FlowCollectorConsolePluginAdvancedSchedulingAffinityPodAffinityPrefer /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -1560,7 +1566,7 @@ pub struct FlowCollectorConsolePluginAdvancedSchedulingAffinityPodAffinityPrefer /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -1670,7 +1676,7 @@ pub struct FlowCollectorConsolePluginAdvancedSchedulingAffinityPodAffinityRequir /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -1681,7 +1687,7 @@ pub struct FlowCollectorConsolePluginAdvancedSchedulingAffinityPodAffinityRequir /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -1822,7 +1828,7 @@ pub struct FlowCollectorConsolePluginAdvancedSchedulingAffinityPodAntiAffinityPr /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -1833,7 +1839,7 @@ pub struct FlowCollectorConsolePluginAdvancedSchedulingAffinityPodAntiAffinityPr /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -1943,7 +1949,7 @@ pub struct FlowCollectorConsolePluginAdvancedSchedulingAffinityPodAntiAffinityRe /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -1954,7 +1960,7 @@ pub struct FlowCollectorConsolePluginAdvancedSchedulingAffinityPodAntiAffinityRe /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -2349,11 +2355,9 @@ pub struct FlowCollectorConsolePluginResources { /// Claims lists the names of resources, defined in spec.resourceClaims, /// that are used by this container. /// - /// /// This is an alpha field and requires enabling the /// DynamicResourceAllocation feature gate. /// - /// /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, @@ -2376,6 +2380,11 @@ pub struct FlowCollectorConsolePluginResourcesClaims { /// the Pod where this field is used. It makes that resource available /// inside a container. pub name: String, + /// Request is the name chosen for a request in the referenced claim. + /// If empty, everything from the claim is made available, otherwise + /// only the result of this request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub request: Option, } /// Defines the desired state of the FlowCollector resource. @@ -2927,7 +2936,7 @@ pub enum FlowCollectorKafkaTlsUserCertType { } /// `loki`, the flow store, client settings. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct FlowCollectorLoki { /// `advanced` allows setting some aspects of the internal configuration of the Loki clients. /// This section is aimed mostly for debugging and fine-grained performance optimizations. @@ -2959,8 +2968,7 @@ pub struct FlowCollectorLoki { /// - Use `Monolithic` when Loki is installed as a monolithic workload
/// - Use `Microservices` when Loki is installed as microservices, but without Loki Operator
/// - Use `Manual` if none of the options above match your setup
- #[serde(default, skip_serializing_if = "Option::is_none")] - pub mode: Option, + pub mode: FlowCollectorLokiMode, /// Loki configuration for `Monolithic` mode. /// Use this option when Loki is installed using the monolithic deployment mode (https://grafana.com/docs/loki/latest/fundamentals/architecture/deployment-modes/#monolithic-mode). /// It is ignored for other modes. @@ -3005,8 +3013,7 @@ pub struct FlowCollectorLokiAdvanced { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct FlowCollectorLokiLokiStack { /// Name of an existing LokiStack resource to use. - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, + pub name: String, /// Namespace where this `LokiStack` resource is located. If omitted, it is assumed to be the same as `spec.namespace`. #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, @@ -3761,7 +3768,7 @@ pub struct FlowCollectorProcessorAdvancedSchedulingAffinityPodAffinityPreferredD /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -3772,7 +3779,7 @@ pub struct FlowCollectorProcessorAdvancedSchedulingAffinityPodAffinityPreferredD /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -3882,7 +3889,7 @@ pub struct FlowCollectorProcessorAdvancedSchedulingAffinityPodAffinityRequiredDu /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -3893,7 +3900,7 @@ pub struct FlowCollectorProcessorAdvancedSchedulingAffinityPodAffinityRequiredDu /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -4034,7 +4041,7 @@ pub struct FlowCollectorProcessorAdvancedSchedulingAffinityPodAntiAffinityPrefer /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -4045,7 +4052,7 @@ pub struct FlowCollectorProcessorAdvancedSchedulingAffinityPodAntiAffinityPrefer /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -4155,7 +4162,7 @@ pub struct FlowCollectorProcessorAdvancedSchedulingAffinityPodAntiAffinityRequir /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -4166,7 +4173,7 @@ pub struct FlowCollectorProcessorAdvancedSchedulingAffinityPodAntiAffinityRequir /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -4579,7 +4586,7 @@ pub struct FlowCollectorProcessorMetricsServer { } /// TLS configuration. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct FlowCollectorProcessorMetricsServerTls { /// `insecureSkipVerify` allows skipping client-side verification of the provided certificate. /// If set to `true`, the `providedCaFile` field is ignored. @@ -4595,8 +4602,8 @@ pub struct FlowCollectorProcessorMetricsServerTls { /// - `Disabled` (default) to not configure TLS for the endpoint. /// - `Provided` to manually provide cert file and a key file. [Unsupported (*)]. /// - `Auto` to use OpenShift auto generated certificate using annotations. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "type")] - pub r#type: Option, + #[serde(rename = "type")] + pub r#type: FlowCollectorProcessorMetricsServerTlsType, } /// TLS configuration when `type` is set to `Provided`. @@ -4671,11 +4678,9 @@ pub struct FlowCollectorProcessorResources { /// Claims lists the names of resources, defined in spec.resourceClaims, /// that are used by this container. /// - /// /// This is an alpha field and requires enabling the /// DynamicResourceAllocation feature gate. /// - /// /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, @@ -4698,6 +4703,11 @@ pub struct FlowCollectorProcessorResourcesClaims { /// the Pod where this field is used. It makes that resource available /// inside a container. pub name: String, + /// Request is the name chosen for a request in the referenced claim. + /// If empty, everything from the claim is made available, otherwise + /// only the result of this request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub request: Option, } /// `subnetLabels` allows to define custom labels on subnets and IPs or to enable automatic labelling of recognized subnets in OpenShift, which is used to identify cluster external traffic. @@ -4719,11 +4729,9 @@ pub struct FlowCollectorProcessorSubnetLabels { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct FlowCollectorProcessorSubnetLabelsCustomLabels { /// List of CIDRs, such as `["1.2.3.4/32"]`. - #[serde(default, skip_serializing_if = "Option::is_none")] - pub cidrs: Option>, + pub cidrs: Vec, /// Label name, used to flag matching flows. - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, + pub name: String, } /// `prometheus` defines Prometheus settings, such as querier configuration used to fetch metrics from the Console plugin. @@ -4735,7 +4743,7 @@ pub struct FlowCollectorPrometheus { } /// Prometheus querying configuration, such as client settings, used in the Console plugin. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct FlowCollectorPrometheusQuerier { /// When `enable` is `true`, the Console plugin queries flow metrics from Prometheus instead of Loki whenever possible. /// It is enbaled by default: set it to `false` to disable this feature. @@ -4752,8 +4760,7 @@ pub struct FlowCollectorPrometheusQuerier { /// `mode` must be set according to the type of Prometheus installation that stores NetObserv metrics:
/// - Use `Auto` to try configuring automatically. In OpenShift, it uses the Thanos querier from OpenShift Cluster Monitoring
/// - Use `Manual` for a manual setup
- #[serde(default, skip_serializing_if = "Option::is_none")] - pub mode: Option, + pub mode: FlowCollectorPrometheusQuerierMode, /// `timeout` is the read timeout for console plugin queries to Prometheus. /// A timeout of zero means no timeout. #[serde(default, skip_serializing_if = "Option::is_none")] diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterfilters.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterfilters.rs index 045a115ea..ccb996251 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterfilters.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterfilters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/clusterfilters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterfluentbitconfigs.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterfluentbitconfigs.rs index 6d36285be..83598943a 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterfluentbitconfigs.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterfluentbitconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/clusterfluentbitconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterinputs.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterinputs.rs index 4976b95bc..16b63654d 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterinputs.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterinputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/clusterinputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusteroutputs.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusteroutputs.rs index 1c4b3f50c..a4551a85f 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusteroutputs.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusteroutputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/clusteroutputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -642,6 +642,9 @@ pub struct ClusterOutputEs { /// Enable AWS Sigv4 Authentication for Amazon ElasticSearch Service. #[serde(default, skip_serializing_if = "Option::is_none", rename = "awsAuth")] pub aws_auth: Option, + /// AWSAuthSecret Enable AWS Sigv4 Authentication for Amazon ElasticSearch Service. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "awsAuthSecret")] + pub aws_auth_secret: Option, /// External ID for the AWS IAM Role specified with aws_role_arn. #[serde(default, skip_serializing_if = "Option::is_none", rename = "awsExternalID")] pub aws_external_id: Option, @@ -664,6 +667,9 @@ pub struct ClusterOutputEs { /// Specify the credentials to use to connect to Elastic's Elasticsearch Service running on Elastic Cloud. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cloudAuth")] pub cloud_auth: Option, + /// CloudAuthSecret Specify the credentials to use to connect to Elastic's Elasticsearch Service running on Elastic Cloud. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "cloudAuthSecret")] + pub cloud_auth_secret: Option, /// If you are using Elastic's Elasticsearch Service you can specify the cloud_id of the cluster running. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cloudID")] pub cloud_id: Option, @@ -767,6 +773,76 @@ pub struct ClusterOutputEs { pub write_operation: Option, } +/// AWSAuthSecret Enable AWS Sigv4 Authentication for Amazon ElasticSearch Service. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputEsAwsAuthSecret { + /// ValueSource defines how to find a value's key. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +/// ValueSource defines how to find a value's key. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputEsAwsAuthSecretValueFrom { + /// Selects a key of a secret in the pod's namespace + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +/// Selects a key of a secret in the pod's namespace +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputEsAwsAuthSecretValueFromSecretKeyRef { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// TODO: Add other useful fields. apiVersion, kind, uid? + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +/// CloudAuthSecret Specify the credentials to use to connect to Elastic's Elasticsearch Service running on Elastic Cloud. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputEsCloudAuthSecret { + /// ValueSource defines how to find a value's key. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +/// ValueSource defines how to find a value's key. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputEsCloudAuthSecretValueFrom { + /// Selects a key of a secret in the pod's namespace + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +/// Selects a key of a secret in the pod's namespace +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterOutputEsCloudAuthSecretValueFromSecretKeyRef { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// TODO: Add other useful fields. apiVersion, kind, uid? + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// Elasticsearch defines Elasticsearch Output configuration. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum ClusterOutputEsCompress { diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterparsers.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterparsers.rs index bd30b1efa..da2e2a792 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterparsers.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/clusterparsers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/clusterparsers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/collectors.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/collectors.rs index 9150cb0ec..c5451353d 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/collectors.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/collectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/collectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/filters.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/filters.rs index f86e22bf9..169114d57 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/filters.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/filters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/filters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/fluentbitconfigs.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/fluentbitconfigs.rs index f47ebdbd7..2fb459a9d 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/fluentbitconfigs.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/fluentbitconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/fluentbitconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/fluentbits.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/fluentbits.rs index c73537c80..985fe2373 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/fluentbits.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/fluentbits.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/fluentbits.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/outputs.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/outputs.rs index 115af6bb7..00afc8193 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/outputs.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/outputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/outputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -643,6 +643,9 @@ pub struct OutputEs { /// Enable AWS Sigv4 Authentication for Amazon ElasticSearch Service. #[serde(default, skip_serializing_if = "Option::is_none", rename = "awsAuth")] pub aws_auth: Option, + /// AWSAuthSecret Enable AWS Sigv4 Authentication for Amazon ElasticSearch Service. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "awsAuthSecret")] + pub aws_auth_secret: Option, /// External ID for the AWS IAM Role specified with aws_role_arn. #[serde(default, skip_serializing_if = "Option::is_none", rename = "awsExternalID")] pub aws_external_id: Option, @@ -665,6 +668,9 @@ pub struct OutputEs { /// Specify the credentials to use to connect to Elastic's Elasticsearch Service running on Elastic Cloud. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cloudAuth")] pub cloud_auth: Option, + /// CloudAuthSecret Specify the credentials to use to connect to Elastic's Elasticsearch Service running on Elastic Cloud. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "cloudAuthSecret")] + pub cloud_auth_secret: Option, /// If you are using Elastic's Elasticsearch Service you can specify the cloud_id of the cluster running. #[serde(default, skip_serializing_if = "Option::is_none", rename = "cloudID")] pub cloud_id: Option, @@ -768,6 +774,76 @@ pub struct OutputEs { pub write_operation: Option, } +/// AWSAuthSecret Enable AWS Sigv4 Authentication for Amazon ElasticSearch Service. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputEsAwsAuthSecret { + /// ValueSource defines how to find a value's key. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +/// ValueSource defines how to find a value's key. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputEsAwsAuthSecretValueFrom { + /// Selects a key of a secret in the pod's namespace + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +/// Selects a key of a secret in the pod's namespace +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputEsAwsAuthSecretValueFromSecretKeyRef { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// TODO: Add other useful fields. apiVersion, kind, uid? + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +/// CloudAuthSecret Specify the credentials to use to connect to Elastic's Elasticsearch Service running on Elastic Cloud. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputEsCloudAuthSecret { + /// ValueSource defines how to find a value's key. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "valueFrom")] + pub value_from: Option, +} + +/// ValueSource defines how to find a value's key. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputEsCloudAuthSecretValueFrom { + /// Selects a key of a secret in the pod's namespace + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretKeyRef")] + pub secret_key_ref: Option, +} + +/// Selects a key of a secret in the pod's namespace +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct OutputEsCloudAuthSecretValueFromSecretKeyRef { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// TODO: Add other useful fields. apiVersion, kind, uid? + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// Elasticsearch defines Elasticsearch Output configuration. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum OutputEsCompress { diff --git a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/parsers.rs b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/parsers.rs index 62bd7d775..a7df9a4b5 100644 --- a/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/parsers.rs +++ b/kube-custom-resources-rs/src/fluentbit_fluent_io/v1alpha2/parsers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentbit.fluent.io/v1alpha2/parsers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterfilters.rs b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterfilters.rs index 2ebd87f02..bad20fdb5 100644 --- a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterfilters.rs +++ b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterfilters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentd.fluent.io/v1alpha1/clusterfilters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterfluentdconfigs.rs b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterfluentdconfigs.rs index f3ba3bcd0..f7ca4b990 100644 --- a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterfluentdconfigs.rs +++ b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterfluentdconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentd.fluent.io/v1alpha1/clusterfluentdconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterinputs.rs b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterinputs.rs index 4d26f9c4b..fe610759b 100644 --- a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterinputs.rs +++ b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusterinputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentd.fluent.io/v1alpha1/clusterinputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusteroutputs.rs b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusteroutputs.rs index 85b568263..5de88f783 100644 --- a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusteroutputs.rs +++ b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/clusteroutputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentd.fluent.io/v1alpha1/clusteroutputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/filters.rs b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/filters.rs index 33dce6b0d..c7c96a99e 100644 --- a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/filters.rs +++ b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/filters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentd.fluent.io/v1alpha1/filters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/fluentdconfigs.rs b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/fluentdconfigs.rs index 95299667f..c17fa5b79 100644 --- a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/fluentdconfigs.rs +++ b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/fluentdconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentd.fluent.io/v1alpha1/fluentdconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/fluentds.rs b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/fluentds.rs index 01b16a637..4e3722833 100644 --- a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/fluentds.rs +++ b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/fluentds.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentd.fluent.io/v1alpha1/fluentds.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/inputs.rs b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/inputs.rs index f0afb566c..06f3ac33a 100644 --- a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/inputs.rs +++ b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/inputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentd.fluent.io/v1alpha1/inputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/outputs.rs b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/outputs.rs index a2bd603a5..b68c546b2 100644 --- a/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/outputs.rs +++ b/kube-custom-resources-rs/src/fluentd_fluent_io/v1alpha1/outputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluent/fluent-operator/fluentd.fluent.io/v1alpha1/outputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flux_framework_org/v1alpha1/miniclusters.rs b/kube-custom-resources-rs/src/flux_framework_org/v1alpha1/miniclusters.rs index 7d2e71408..46f68f0af 100644 --- a/kube-custom-resources-rs/src/flux_framework_org/v1alpha1/miniclusters.rs +++ b/kube-custom-resources-rs/src/flux_framework_org/v1alpha1/miniclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/flux-framework/flux-operator/flux-framework.org/v1alpha1/miniclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/flux_framework_org/v1alpha2/miniclusters.rs b/kube-custom-resources-rs/src/flux_framework_org/v1alpha2/miniclusters.rs index 3e171a59b..1a8455f2f 100644 --- a/kube-custom-resources-rs/src/flux_framework_org/v1alpha2/miniclusters.rs +++ b/kube-custom-resources-rs/src/flux_framework_org/v1alpha2/miniclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/flux-framework/flux-operator/flux-framework.org/v1alpha2/miniclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/forkliftcontrollers.rs b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/forkliftcontrollers.rs index d77c14fa1..177080fe9 100644 --- a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/forkliftcontrollers.rs +++ b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/forkliftcontrollers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/forkliftcontrollers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/hooks.rs b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/hooks.rs index 46f4b85a7..369f2aaf8 100644 --- a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/hooks.rs +++ b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/hooks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/hooks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/hosts.rs b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/hosts.rs index 245df1747..739b70e58 100644 --- a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/hosts.rs +++ b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/hosts.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/hosts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -37,9 +38,9 @@ pub struct HostSpec { #[serde(default, skip_serializing_if = "Option::is_none")] pub namespace: Option, /// Provider - pub provider: HostProvider, + pub provider: ObjectReference, /// Credentials. - pub secret: HostSecret, + pub secret: ObjectReference, /// Type used to qualify the name. #[serde(default, skip_serializing_if = "Option::is_none", rename = "type")] pub r#type: Option, diff --git a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/migrations.rs b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/migrations.rs index 8efca54eb..f0207bb20 100644 --- a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/migrations.rs +++ b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/migrations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/migrations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -28,7 +29,7 @@ pub struct MigrationSpec { #[serde(default, skip_serializing_if = "Option::is_none")] pub cutover: Option, /// Reference to the associated Plan. - pub plan: MigrationPlan, + pub plan: ObjectReference, } /// Source reference. @@ -140,7 +141,7 @@ pub struct MigrationStatusVms { pub instance_type: Option, /// Disk decryption LUKS keys #[serde(default, skip_serializing_if = "Option::is_none")] - pub luks: Option, + pub luks: Option, /// An object Name. /// vsphere: /// A qualified name. @@ -185,7 +186,7 @@ pub struct MigrationStatusVmsError { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct MigrationStatusVmsHooks { /// Hook reference. - pub hook: MigrationStatusVmsHooksHook, + pub hook: ObjectReference, /// Pipeline step. pub step: String, } diff --git a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/networkmaps.rs b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/networkmaps.rs index 2cf2f4805..be2b381ef 100644 --- a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/networkmaps.rs +++ b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/networkmaps.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/networkmaps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -83,9 +84,9 @@ pub struct NetworkMapMapSource { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct NetworkMapProvider { /// Destination. - pub destination: NetworkMapProviderDestination, + pub destination: ObjectReference, /// Source. - pub source: NetworkMapProviderSource, + pub source: ObjectReference, } /// Destination. diff --git a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/openstackvolumepopulators.rs b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/openstackvolumepopulators.rs index 52a064558..7f3ffb588 100644 --- a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/openstackvolumepopulators.rs +++ b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/openstackvolumepopulators.rs @@ -1,11 +1,12 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/openstackvolumepopulators.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -24,7 +25,7 @@ pub struct OpenstackVolumePopulatorSpec { pub secret_name: String, /// The network attachment definition that should be used for disk transfer. #[serde(default, skip_serializing_if = "Option::is_none", rename = "transferNetwork")] - pub transfer_network: Option, + pub transfer_network: Option, } /// The network attachment definition that should be used for disk transfer. diff --git a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/ovirtvolumepopulators.rs b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/ovirtvolumepopulators.rs index 28ce869a1..899bdc4e9 100644 --- a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/ovirtvolumepopulators.rs +++ b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/ovirtvolumepopulators.rs @@ -1,11 +1,12 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/ovirtvolumepopulators.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -24,7 +25,7 @@ pub struct OvirtVolumePopulatorSpec { pub engine_url: String, /// The network attachment definition that should be used for disk transfer. #[serde(default, skip_serializing_if = "Option::is_none", rename = "transferNetwork")] - pub transfer_network: Option, + pub transfer_network: Option, } /// The network attachment definition that should be used for disk transfer. diff --git a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/plans.rs b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/plans.rs index 4e12736b4..86bce4b36 100644 --- a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/plans.rs +++ b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/plans.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/plans.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -31,7 +32,7 @@ pub struct PlanSpec { /// Preserve the CPU model and flags the VM runs with in its oVirt cluster. #[serde(default, skip_serializing_if = "Option::is_none", rename = "preserveClusterCpuModel")] pub preserve_cluster_cpu_model: Option, - /// Preserve static IPs of VMs in vSphere (Windows only) + /// Preserve static IPs of VMs in vSphere #[serde(default, skip_serializing_if = "Option::is_none", rename = "preserveStaticIPs")] pub preserve_static_i_ps: Option, /// Providers. @@ -41,7 +42,7 @@ pub struct PlanSpec { pub target_namespace: String, /// The network attachment definition that should be used for disk transfer. #[serde(default, skip_serializing_if = "Option::is_none", rename = "transferNetwork")] - pub transfer_network: Option, + pub transfer_network: Option, /// List of VMs. pub vms: Vec, /// Whether this is a warm migration. @@ -53,9 +54,9 @@ pub struct PlanSpec { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PlanMap { /// Network. - pub network: PlanMapNetwork, + pub network: ObjectReference, /// Storage. - pub storage: PlanMapStorage, + pub storage: ObjectReference, } /// Network. @@ -138,9 +139,9 @@ pub struct PlanMapStorage { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PlanProvider { /// Destination. - pub destination: PlanProviderDestination, + pub destination: ObjectReference, /// Source. - pub source: PlanProviderSource, + pub source: ObjectReference, } /// Destination. @@ -273,7 +274,7 @@ pub struct PlanVms { pub instance_type: Option, /// Disk decryption LUKS keys #[serde(default, skip_serializing_if = "Option::is_none")] - pub luks: Option, + pub luks: Option, /// An object Name. /// vsphere: /// A qualified name. @@ -295,7 +296,7 @@ pub struct PlanVms { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PlanVmsHooks { /// Hook reference. - pub hook: PlanVmsHooksHook, + pub hook: ObjectReference, /// Pipeline step. pub step: String, } @@ -541,7 +542,7 @@ pub struct PlanStatusMigrationVms { pub instance_type: Option, /// Disk decryption LUKS keys #[serde(default, skip_serializing_if = "Option::is_none")] - pub luks: Option, + pub luks: Option, /// An object Name. /// vsphere: /// A qualified name. @@ -586,7 +587,7 @@ pub struct PlanStatusMigrationVmsError { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PlanStatusMigrationVmsHooks { /// Hook reference. - pub hook: PlanStatusMigrationVmsHooksHook, + pub hook: ObjectReference, /// Pipeline step. pub step: String, } diff --git a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/providers.rs b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/providers.rs index 66b8fc3d9..cd274aa79 100644 --- a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/providers.rs +++ b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/providers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/providers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -22,7 +23,7 @@ use self::prelude::*; pub struct ProviderSpec { /// References a secret containing credentials and /// other confidential information. - pub secret: ProviderSecret, + pub secret: ObjectReference, /// Provider settings. #[serde(default, skip_serializing_if = "Option::is_none")] pub settings: Option>, diff --git a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/storagemaps.rs b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/storagemaps.rs index 68a6783aa..f8ce8e186 100644 --- a/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/storagemaps.rs +++ b/kube-custom-resources-rs/src/forklift_konveyor_io/v1beta1/storagemaps.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubev2v/forklift/forklift.konveyor.io/v1beta1/storagemaps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -89,9 +90,9 @@ pub struct StorageMapMapSource { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct StorageMapProvider { /// Destination. - pub destination: StorageMapProviderDestination, + pub destination: ObjectReference, /// Source. - pub source: StorageMapProviderSource, + pub source: ObjectReference, } /// Destination. diff --git a/kube-custom-resources-rs/src/fossul_io/v1/backupconfigs.rs b/kube-custom-resources-rs/src/fossul_io/v1/backupconfigs.rs index 72660cb7f..ce499a7d8 100644 --- a/kube-custom-resources-rs/src/fossul_io/v1/backupconfigs.rs +++ b/kube-custom-resources-rs/src/fossul_io/v1/backupconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fossul/fossul/fossul.io/v1/backupconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fossul_io/v1/backups.rs b/kube-custom-resources-rs/src/fossul_io/v1/backups.rs index 350f39376..65ff452f7 100644 --- a/kube-custom-resources-rs/src/fossul_io/v1/backups.rs +++ b/kube-custom-resources-rs/src/fossul_io/v1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fossul/fossul/fossul.io/v1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fossul_io/v1/backupschedules.rs b/kube-custom-resources-rs/src/fossul_io/v1/backupschedules.rs index f6c23e742..98b92de88 100644 --- a/kube-custom-resources-rs/src/fossul_io/v1/backupschedules.rs +++ b/kube-custom-resources-rs/src/fossul_io/v1/backupschedules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fossul/fossul/fossul.io/v1/backupschedules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fossul_io/v1/fossuls.rs b/kube-custom-resources-rs/src/fossul_io/v1/fossuls.rs index 1f82951a0..870fd4c00 100644 --- a/kube-custom-resources-rs/src/fossul_io/v1/fossuls.rs +++ b/kube-custom-resources-rs/src/fossul_io/v1/fossuls.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fossul/fossul/fossul.io/v1/fossuls.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/fossul_io/v1/restores.rs b/kube-custom-resources-rs/src/fossul_io/v1/restores.rs index 96c9aecb8..3bd9736db 100644 --- a/kube-custom-resources-rs/src/fossul_io/v1/restores.rs +++ b/kube-custom-resources-rs/src/fossul_io/v1/restores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fossul/fossul/fossul.io/v1/restores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/gatewayclasses.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/gatewayclasses.rs index 858cc2a7f..4bf2b9075 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/gatewayclasses.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/gatewayclasses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1/gatewayclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/gateways.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/gateways.rs index 28c57cc1d..9b16ba66a 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/gateways.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/gateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1/gateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/grpcroutes.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/grpcroutes.rs index 43b4247ca..2f04999c7 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/grpcroutes.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/grpcroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1/grpcroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -394,7 +394,7 @@ pub struct GRPCRouteRules { /// For example, take the following matches configuration: /// /// - /// ``` + /// ```text /// matches: /// - method: /// service: foo.bar @@ -1582,7 +1582,7 @@ pub enum GRPCRouteRulesFiltersType { /// is `foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// matches: /// - method: /// type: Exact diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/httproutes.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/httproutes.rs index 004fda4f4..d0393b62d 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/httproutes.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1/httproutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1/httproutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -421,7 +421,7 @@ pub struct HTTPRouteRules { /// For example, take the following matches configuration: /// /// - /// ``` + /// ```text /// matches: /// - path: /// value: "/foo" @@ -2231,7 +2231,7 @@ pub enum HTTPRouteRulesFiltersUrlRewritePathType { /// starts with `/foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// match: /// /// @@ -2329,7 +2329,7 @@ pub enum HTTPRouteRulesMatchesHeadersType { /// starts with `/foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// match: /// /// diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/grpcroutes.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/grpcroutes.rs index e38ade720..007a02f0b 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/grpcroutes.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/grpcroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1alpha2/grpcroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -393,7 +393,7 @@ pub struct GRPCRouteRules { /// For example, take the following matches configuration: /// /// - /// ``` + /// ```text /// matches: /// - method: /// service: foo.bar @@ -1581,7 +1581,7 @@ pub enum GRPCRouteRulesFiltersType { /// is `foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// matches: /// - method: /// type: Exact diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/referencegrants.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/referencegrants.rs index a1d69c6e1..d80fa3ab5 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/referencegrants.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/referencegrants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1alpha2/referencegrants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/tcproutes.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/tcproutes.rs index d19e3d09d..456063e89 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/tcproutes.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/tcproutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1alpha2/tcproutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/tlsroutes.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/tlsroutes.rs index 12802603f..e473b45a0 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/tlsroutes.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/tlsroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1alpha2/tlsroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/udproutes.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/udproutes.rs index 60729e1d9..7a8c2e574 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/udproutes.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1alpha2/udproutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1alpha2/udproutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/gatewayclasses.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/gatewayclasses.rs index b32d98711..d008263b4 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/gatewayclasses.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/gatewayclasses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1beta1/gatewayclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/gateways.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/gateways.rs index 9af9de57d..ffb79407e 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/gateways.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/gateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1beta1/gateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/httproutes.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/httproutes.rs index db016e743..52f482493 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/httproutes.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/httproutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1beta1/httproutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -421,7 +421,7 @@ pub struct HTTPRouteRules { /// For example, take the following matches configuration: /// /// - /// ``` + /// ```text /// matches: /// - path: /// value: "/foo" @@ -2231,7 +2231,7 @@ pub enum HTTPRouteRulesFiltersUrlRewritePathType { /// starts with `/foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// match: /// /// @@ -2329,7 +2329,7 @@ pub enum HTTPRouteRulesMatchesHeadersType { /// starts with `/foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// match: /// /// diff --git a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/referencegrants.rs b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/referencegrants.rs index 7542b669c..0905f7ce4 100644 --- a/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/referencegrants.rs +++ b/kube-custom-resources-rs/src/gateway_networking_k8s_io/v1beta1/referencegrants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/gateway-api/gateway.networking.k8s.io/v1beta1/referencegrants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/clientsettingspolicies.rs b/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/clientsettingspolicies.rs index 59b0b70ad..3f67357b8 100644 --- a/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/clientsettingspolicies.rs +++ b/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/clientsettingspolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/clientsettingspolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/nginxgateways.rs b/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/nginxgateways.rs index 337ee9e6d..7224f290b 100644 --- a/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/nginxgateways.rs +++ b/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/nginxgateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/nginxgateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/nginxproxies.rs b/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/nginxproxies.rs index 80ac7b6d4..2cb3bd935 100644 --- a/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/nginxproxies.rs +++ b/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/nginxproxies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/nginxproxies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -24,6 +24,9 @@ pub struct NginxProxySpec { /// Default is "dual", meaning the server will use both IPv4 and IPv6. #[serde(default, skip_serializing_if = "Option::is_none", rename = "ipFamily")] pub ip_family: Option, + /// RewriteClientIP defines configuration for rewriting the client IP to the original client's IP. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "rewriteClientIP")] + pub rewrite_client_ip: Option, /// Telemetry specifies the OpenTelemetry configuration. #[serde(default, skip_serializing_if = "Option::is_none")] pub telemetry: Option, @@ -40,6 +43,66 @@ pub enum NginxProxyIpFamily { Ipv6, } +/// RewriteClientIP defines configuration for rewriting the client IP to the original client's IP. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct NginxProxyRewriteClientIp { + /// Mode defines how NGINX will rewrite the client's IP address. + /// There are two possible modes: + /// - ProxyProtocol: NGINX will rewrite the client's IP using the PROXY protocol header. + /// - XForwardedFor: NGINX will rewrite the client's IP using the X-Forwarded-For header. + /// Sets NGINX directive real_ip_header: https://nginx.org/en/docs/http/ngx_http_realip_module.html#real_ip_header + #[serde(default, skip_serializing_if = "Option::is_none")] + pub mode: Option, + /// SetIPRecursively configures whether recursive search is used when selecting the client's address from + /// the X-Forwarded-For header. It is used in conjunction with TrustedAddresses. + /// If enabled, NGINX will recurse on the values in X-Forwarded-Header from the end of array + /// to start of array and select the first untrusted IP. + /// For example, if X-Forwarded-For is [11.11.11.11, 22.22.22.22, 55.55.55.1], + /// and TrustedAddresses is set to 55.55.55.1/32, NGINX will rewrite the client IP to 22.22.22.22. + /// If disabled, NGINX will select the IP at the end of the array. + /// In the previous example, 55.55.55.1 would be selected. + /// Sets NGINX directive real_ip_recursive: https://nginx.org/en/docs/http/ngx_http_realip_module.html#real_ip_recursive + #[serde(default, skip_serializing_if = "Option::is_none", rename = "setIPRecursively")] + pub set_ip_recursively: Option, + /// TrustedAddresses specifies the addresses that are trusted to send correct client IP information. + /// If a request comes from a trusted address, NGINX will rewrite the client IP information, + /// and forward it to the backend in the X-Forwarded-For* and X-Real-IP headers. + /// If the request does not come from a trusted address, NGINX will not rewrite the client IP information. + /// TrustedAddresses only supports CIDR blocks: 192.33.21.1/24, fe80::1/64. + /// To trust all addresses (not recommended for production), set to 0.0.0.0/0. + /// If no addresses are provided, NGINX will not rewrite the client IP information. + /// Sets NGINX directive set_real_ip_from: https://nginx.org/en/docs/http/ngx_http_realip_module.html#set_real_ip_from + /// This field is required if mode is set. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "trustedAddresses")] + pub trusted_addresses: Option>, +} + +/// RewriteClientIP defines configuration for rewriting the client IP to the original client's IP. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum NginxProxyRewriteClientIpMode { + ProxyProtocol, + XForwardedFor, +} + +/// Address is a struct that specifies address type and value. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct NginxProxyRewriteClientIpTrustedAddresses { + /// Type specifies the type of address. + /// Default is "cidr" which specifies that the address is a CIDR block. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "type")] + pub r#type: Option, + /// Value specifies the address value. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub value: Option, +} + +/// Address is a struct that specifies address type and value. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum NginxProxyRewriteClientIpTrustedAddressesType { + #[serde(rename = "cidr")] + Cidr, +} + /// Telemetry specifies the OpenTelemetry configuration. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct NginxProxyTelemetry { diff --git a/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/observabilitypolicies.rs b/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/observabilitypolicies.rs index 0f375e877..fed13f8b2 100644 --- a/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/observabilitypolicies.rs +++ b/kube-custom-resources-rs/src/gateway_nginx_org/v1alpha1/observabilitypolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/nginx-kubernetes-gateway/gateway.nginx.org/v1alpha1/observabilitypolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/authservices.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/authservices.rs index d4b0e5a5e..8a4572053 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/authservices.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/authservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/authservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/consulresolvers.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/consulresolvers.rs index 611a13deb..0aeb7056f 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/consulresolvers.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/consulresolvers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/consulresolvers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/devportals.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/devportals.rs index d5abd9063..8d46431ef 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/devportals.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/devportals.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/devportals.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/hosts.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/hosts.rs index 1f5e64aef..15657eeb8 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/hosts.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/hosts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/hosts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/kubernetesendpointresolvers.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/kubernetesendpointresolvers.rs index b41acb765..c1b53b441 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/kubernetesendpointresolvers.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/kubernetesendpointresolvers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/kubernetesendpointresolvers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/kubernetesserviceresolvers.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/kubernetesserviceresolvers.rs index 0b478e6d5..e6d9b156c 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/kubernetesserviceresolvers.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/kubernetesserviceresolvers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/kubernetesserviceresolvers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/listeners.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/listeners.rs index 592c52112..71f65a0e3 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/listeners.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/listeners.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/listeners.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/logservices.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/logservices.rs index 40d13143d..33a26ad19 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/logservices.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/logservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/logservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/modules.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/modules.rs index 9b5293929..bfbdd1165 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/modules.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/modules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/modules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/ratelimitservices.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/ratelimitservices.rs index d1355c82f..1e806f62b 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/ratelimitservices.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/ratelimitservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/ratelimitservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tcpmappings.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tcpmappings.rs index 3b01a11c4..fee4dd736 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tcpmappings.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tcpmappings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/tcpmappings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tlscontexts.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tlscontexts.rs index dc0c893e1..9d9ee64e2 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tlscontexts.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tlscontexts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/tlscontexts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tracingservices.rs b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tracingservices.rs index 935fb90bd..2550b5833 100644 --- a/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tracingservices.rs +++ b/kube-custom-resources-rs/src/getambassador_io/v3alpha1/tracingservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/emissary-ingress/emissary/getambassador.io/v3alpha1/tracingservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/gitops_hybrid_cloud_patterns_io/v1alpha1/patterns.rs b/kube-custom-resources-rs/src/gitops_hybrid_cloud_patterns_io/v1alpha1/patterns.rs index 76055682b..1a80807d1 100644 --- a/kube-custom-resources-rs/src/gitops_hybrid_cloud_patterns_io/v1alpha1/patterns.rs +++ b/kube-custom-resources-rs/src/gitops_hybrid_cloud_patterns_io/v1alpha1/patterns.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/validatedpatterns/patterns-operator/gitops.hybrid-cloud-patterns.io/v1alpha1/patterns.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanadashboards.rs b/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanadashboards.rs index ca0821979..94ad416e2 100644 --- a/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanadashboards.rs +++ b/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanadashboards.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana-operator/grafana-operator/grafana.integreatly.org/v1beta1/grafanadashboards.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanadatasources.rs b/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanadatasources.rs index 8eba9d099..fcc8ee572 100644 --- a/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanadatasources.rs +++ b/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanadatasources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana-operator/grafana-operator/grafana.integreatly.org/v1beta1/grafanadatasources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanafolders.rs b/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanafolders.rs index 6a6adf9fb..ec7332a17 100644 --- a/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanafolders.rs +++ b/kube-custom-resources-rs/src/grafana_integreatly_org/v1beta1/grafanafolders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana-operator/grafana-operator/grafana.integreatly.org/v1beta1/grafanafolders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshotclasses.rs b/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshotclasses.rs index 165bccdb7..aa2eda84b 100644 --- a/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshotclasses.rs +++ b/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshotclasses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-csi/external-snapshotter/groupsnapshot.storage.k8s.io/v1alpha1/volumegroupsnapshotclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshotcontents.rs b/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshotcontents.rs index 00a9e84e8..1485178d7 100644 --- a/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshotcontents.rs +++ b/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshotcontents.rs @@ -1,11 +1,12 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-csi/external-snapshotter/groupsnapshot.storage.k8s.io/v1alpha1/volumegroupsnapshotcontents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -62,7 +63,7 @@ pub struct VolumeGroupSnapshotContentSpec { /// This field is immutable after creation. /// Required. #[serde(rename = "volumeGroupSnapshotRef")] - pub volume_group_snapshot_ref: VolumeGroupSnapshotContentVolumeGroupSnapshotRef, + pub volume_group_snapshot_ref: ObjectReference, } /// Spec defines properties of a VolumeGroupSnapshotContent created by the underlying storage system. diff --git a/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshots.rs b/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshots.rs index c210040c0..21cfabdb0 100644 --- a/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshots.rs +++ b/kube-custom-resources-rs/src/groupsnapshot_storage_k8s_io/v1alpha1/volumegroupsnapshots.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-csi/external-snapshotter/groupsnapshot.storage.k8s.io/v1alpha1/volumegroupsnapshots.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/cronhotbackups.rs b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/cronhotbackups.rs index 9bdaf8819..96dc94f7d 100644 --- a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/cronhotbackups.rs +++ b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/cronhotbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hazelcast/hazelcast-platform-operator/hazelcast.com/v1alpha1/cronhotbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/hazelcasts.rs b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/hazelcasts.rs index 462936b01..233ee2e02 100644 --- a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/hazelcasts.rs +++ b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/hazelcasts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hazelcast/hazelcast-platform-operator/hazelcast.com/v1alpha1/hazelcasts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/hotbackups.rs b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/hotbackups.rs index 6530cb11e..b3a06840a 100644 --- a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/hotbackups.rs +++ b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/hotbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hazelcast/hazelcast-platform-operator/hazelcast.com/v1alpha1/hotbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/managementcenters.rs b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/managementcenters.rs index 11c60fd44..031a232d7 100644 --- a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/managementcenters.rs +++ b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/managementcenters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hazelcast/hazelcast-platform-operator/hazelcast.com/v1alpha1/managementcenters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/maps.rs b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/maps.rs index 88fa9de8c..44773e245 100644 --- a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/maps.rs +++ b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/maps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hazelcast/hazelcast-platform-operator/hazelcast.com/v1alpha1/maps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/wanreplications.rs b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/wanreplications.rs index e95044fe7..ad412ce5c 100644 --- a/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/wanreplications.rs +++ b/kube-custom-resources-rs/src/hazelcast_com/v1alpha1/wanreplications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hazelcast/hazelcast-platform-operator/hazelcast.com/v1alpha1/wanreplications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/helm_sigstore_dev/v1alpha1/rekors.rs b/kube-custom-resources-rs/src/helm_sigstore_dev/v1alpha1/rekors.rs index cfe14e138..20676bf9d 100644 --- a/kube-custom-resources-rs/src/helm_sigstore_dev/v1alpha1/rekors.rs +++ b/kube-custom-resources-rs/src/helm_sigstore_dev/v1alpha1/rekors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/sigstore/sigstore-helm-operator/helm.sigstore.dev/v1alpha1/rekors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2/helmreleases.rs b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2/helmreleases.rs index 0dfa560d9..5cc846fa0 100644 --- a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2/helmreleases.rs +++ b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2/helmreleases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2/helmreleases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta1/helmreleases.rs b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta1/helmreleases.rs index 2de53a497..4fc8257cc 100644 --- a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta1/helmreleases.rs +++ b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta1/helmreleases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta1/helmreleases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/helmreleases.rs b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/helmreleases.rs index fe1378a76..0fe9010a4 100644 --- a/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/helmreleases.rs +++ b/kube-custom-resources-rs/src/helm_toolkit_fluxcd_io/v2beta2/helmreleases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/helm-controller/helm.toolkit.fluxcd.io/v2beta2/helmreleases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/checkpoints.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/checkpoints.rs index c222ae5d8..690ecd0f7 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/checkpoints.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/checkpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/checkpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterclaims.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterclaims.rs index e0a5440cf..223ac43a4 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterclaims.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterclaims.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/clusterclaims.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeploymentcustomizations.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeploymentcustomizations.rs index dd4b31781..f1dfb44fd 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeploymentcustomizations.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeploymentcustomizations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/clusterdeploymentcustomizations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeployments.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeployments.rs index 0161a2648..87f589aef 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeployments.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeployments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/clusterdeployments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeprovisions.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeprovisions.rs index 207761f27..cf12b90da 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeprovisions.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterdeprovisions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/clusterdeprovisions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterimagesets.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterimagesets.rs index d487b3d9c..643713f56 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterimagesets.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterimagesets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/clusterimagesets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterpools.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterpools.rs index 9f66be2c9..11af575eb 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterpools.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterpools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/clusterpools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterprovisions.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterprovisions.rs index 5af4401d2..1d6d8bc40 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterprovisions.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterprovisions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/clusterprovisions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterrelocates.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterrelocates.rs index 7bb99f971..18c3f6cf7 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterrelocates.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterrelocates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/clusterrelocates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterstates.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterstates.rs index 65e6ccbd4..d5b2ac470 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterstates.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/clusterstates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/clusterstates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/dnszones.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/dnszones.rs index d29884c0b..9e24ac6bd 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/dnszones.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/dnszones.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/dnszones.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/hiveconfigs.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/hiveconfigs.rs index 1ba8390d9..2ec42b5a4 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/hiveconfigs.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/hiveconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/hiveconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/machinepoolnameleases.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/machinepoolnameleases.rs index a03e7ef85..aae40c851 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/machinepoolnameleases.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/machinepoolnameleases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/machinepoolnameleases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/machinepools.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/machinepools.rs index 91479e149..d1eefe50f 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/machinepools.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/machinepools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/machinepools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -171,6 +171,9 @@ pub struct MachinePoolPlatformAzure { /// VirtualNetwork specifies the name of an existing VNet for the Machines to use If omitted, the default (${infraID}-vnet) will be used. #[serde(default, skip_serializing_if = "Option::is_none", rename = "virtualNetwork")] pub virtual_network: Option, + /// VMNetworkingType specifies whether to enable accelerated networking. Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, greatly improving its networking performance. eg. values: "Accelerated", "Basic" + #[serde(default, skip_serializing_if = "Option::is_none", rename = "vmNetworkingType")] + pub vm_networking_type: Option, /// Zones is list of availability zones that can be used. eg. ["1", "2", "3"] #[serde(default, skip_serializing_if = "Option::is_none")] pub zones: Option>, @@ -227,6 +230,13 @@ pub struct MachinePoolPlatformAzureOsImage { pub version: String, } +/// Azure is the configuration used when installing on Azure. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum MachinePoolPlatformAzureVmNetworkingType { + Accelerated, + Basic, +} + /// GCP is the configuration used when installing on GCP. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct MachinePoolPlatformGcp { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/selectorsyncidentityproviders.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/selectorsyncidentityproviders.rs index 8d11e38fa..7ac4006e7 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/selectorsyncidentityproviders.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/selectorsyncidentityproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/selectorsyncidentityproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hive_openshift_io/v1/syncidentityproviders.rs b/kube-custom-resources-rs/src/hive_openshift_io/v1/syncidentityproviders.rs index 3d9ce442d..bbcf49d5e 100644 --- a/kube-custom-resources-rs/src/hive_openshift_io/v1/syncidentityproviders.rs +++ b/kube-custom-resources-rs/src/hive_openshift_io/v1/syncidentityproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hive.openshift.io/v1/syncidentityproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/clustersyncleases.rs b/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/clustersyncleases.rs index 5e93ef302..7ba7574a5 100644 --- a/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/clustersyncleases.rs +++ b/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/clustersyncleases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hiveinternal.openshift.io/v1alpha1/clustersyncleases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/clustersyncs.rs b/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/clustersyncs.rs index a662abee3..a43a582fd 100644 --- a/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/clustersyncs.rs +++ b/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/clustersyncs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hiveinternal.openshift.io/v1alpha1/clustersyncs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/fakeclusterinstalls.rs b/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/fakeclusterinstalls.rs index ebd5d12ac..b368a8c7b 100644 --- a/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/fakeclusterinstalls.rs +++ b/kube-custom-resources-rs/src/hiveinternal_openshift_io/v1alpha1/fakeclusterinstalls.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/hive/hiveinternal.openshift.io/v1alpha1/fakeclusterinstalls.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hierarchicalresourcequotas.rs b/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hierarchicalresourcequotas.rs index 469ba181e..c5496a963 100644 --- a/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hierarchicalresourcequotas.rs +++ b/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hierarchicalresourcequotas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/hierarchical-namespaces/hnc.x-k8s.io/v1alpha2/hierarchicalresourcequotas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hierarchyconfigurations.rs b/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hierarchyconfigurations.rs index 70294ea7b..42e587e56 100644 --- a/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hierarchyconfigurations.rs +++ b/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hierarchyconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/hierarchical-namespaces/hnc.x-k8s.io/v1alpha2/hierarchyconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hncconfigurations.rs b/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hncconfigurations.rs index 9baffc5cd..d411e3625 100644 --- a/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hncconfigurations.rs +++ b/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/hncconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/hierarchical-namespaces/hnc.x-k8s.io/v1alpha2/hncconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/subnamespaceanchors.rs b/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/subnamespaceanchors.rs index f1ad69484..1d777f4f7 100644 --- a/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/subnamespaceanchors.rs +++ b/kube-custom-resources-rs/src/hnc_x_k8s_io/v1alpha2/subnamespaceanchors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/hierarchical-namespaces/hnc.x-k8s.io/v1alpha2/subnamespaceanchors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hyperfoil_io/v1alpha1/horreums.rs b/kube-custom-resources-rs/src/hyperfoil_io/v1alpha1/horreums.rs index 49f9d3240..5292e6737 100644 --- a/kube-custom-resources-rs/src/hyperfoil_io/v1alpha1/horreums.rs +++ b/kube-custom-resources-rs/src/hyperfoil_io/v1alpha1/horreums.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Hyperfoil/horreum-operator/hyperfoil.io/v1alpha1/horreums.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/hyperfoil_io/v1alpha2/hyperfoils.rs b/kube-custom-resources-rs/src/hyperfoil_io/v1alpha2/hyperfoils.rs index 3e796a04b..f82d3fd47 100644 --- a/kube-custom-resources-rs/src/hyperfoil_io/v1alpha2/hyperfoils.rs +++ b/kube-custom-resources-rs/src/hyperfoil_io/v1alpha2/hyperfoils.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Hyperfoil/hyperfoil-operator/hyperfoil.io/v1alpha2/hyperfoils.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/groups.rs b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/groups.rs index 04c3be74e..865b8d5ef 100644 --- a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/groups.rs +++ b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/groups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/iam-controller/iam.services.k8s.aws/v1alpha1/groups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/instanceprofiles.rs b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/instanceprofiles.rs index 99c56ffb4..bf014ceca 100644 --- a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/instanceprofiles.rs +++ b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/instanceprofiles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/iam-controller/iam.services.k8s.aws/v1alpha1/instanceprofiles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/openidconnectproviders.rs b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/openidconnectproviders.rs index d31c47387..43883fc5c 100644 --- a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/openidconnectproviders.rs +++ b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/openidconnectproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/iam-controller/iam.services.k8s.aws/v1alpha1/openidconnectproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/policies.rs b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/policies.rs index 5a6113513..a6f1f4e20 100644 --- a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/policies.rs +++ b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/policies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/iam-controller/iam.services.k8s.aws/v1alpha1/policies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/roles.rs b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/roles.rs index 56f3453eb..c877fdf17 100644 --- a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/roles.rs +++ b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/roles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/iam-controller/iam.services.k8s.aws/v1alpha1/roles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/users.rs b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/users.rs index 4dbae3d1d..2f7fa3e55 100644 --- a/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/users.rs +++ b/kube-custom-resources-rs/src/iam_services_k8s_aws/v1alpha1/users.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/iam-controller/iam.services.k8s.aws/v1alpha1/users.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ibmcloud_ibm_com/v1alpha1/composables.rs b/kube-custom-resources-rs/src/ibmcloud_ibm_com/v1alpha1/composables.rs index 0bd198f94..e7990f4b6 100644 --- a/kube-custom-resources-rs/src/ibmcloud_ibm_com/v1alpha1/composables.rs +++ b/kube-custom-resources-rs/src/ibmcloud_ibm_com/v1alpha1/composables.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/composable-operator/composable/ibmcloud.ibm.com/v1alpha1/composables.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imagepolicies.rs b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imagepolicies.rs index 7b0d22c26..c6dd83eec 100644 --- a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imagepolicies.rs +++ b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imagepolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta1/imagepolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imagerepositories.rs b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imagerepositories.rs index c7008984e..a35a795cf 100644 --- a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imagerepositories.rs +++ b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imagerepositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta1/imagerepositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -28,12 +28,10 @@ pub struct ImageRepositorySpec { /// CertSecretRef can be given the name of a secret containing /// either or both of /// - /// /// - a PEM-encoded client certificate (`certFile`) and private /// key (`keyFile`); /// - a PEM-encoded CA certificate (`caFile`) /// - /// /// and whichever are supplied, will be used for connecting to the /// registry. The client cert and key are useful if you are /// authenticating with a certificate; the CA cert is useful if @@ -45,12 +43,10 @@ pub struct ImageRepositorySpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "exclusionList")] pub exclusion_list: Option>, /// Image is the name of the image repository - #[serde(default, skip_serializing_if = "Option::is_none")] - pub image: Option, + pub image: String, /// Interval is the length of time to wait between /// scans of the image repository. - #[serde(default, skip_serializing_if = "Option::is_none")] - pub interval: Option, + pub interval: String, /// SecretRef can be given the name of a secret containing /// credentials to use for the image registry. The secret should be /// created with `kubectl create secret docker-registry`, or the @@ -95,12 +91,10 @@ pub struct ImageRepositoryAccessFromNamespaceSelectors { /// CertSecretRef can be given the name of a secret containing /// either or both of /// -/// /// - a PEM-encoded client certificate (`certFile`) and private /// key (`keyFile`); /// - a PEM-encoded CA certificate (`caFile`) /// -/// /// and whichever are supplied, will be used for connecting to the /// registry. The client cert and key are useful if you are /// authenticating with a certificate; the CA cert is useful if diff --git a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imageupdateautomations.rs b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imageupdateautomations.rs index f6726f833..335ae1a99 100644 --- a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imageupdateautomations.rs +++ b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta1/imageupdateautomations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/image-automation-controller/image.toolkit.fluxcd.io/v1beta1/imageupdateautomations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -81,14 +81,12 @@ pub struct ImageUpdateAutomationGitCheckoutRef { pub branch: Option, /// Commit SHA to check out, takes precedence over all reference fields. /// - /// /// This can be combined with Branch to shallow clone the branch, in which /// the commit is expected to exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub commit: Option, /// Name of the reference to check out; takes precedence over Branch, Tag and SemVer. /// - /// /// It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description /// Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" #[serde(default, skip_serializing_if = "Option::is_none")] @@ -134,8 +132,8 @@ pub struct ImageUpdateAutomationGitCommitSigningKey { /// corresponding to the ASCII Armored file containing the GPG signing /// keypair as the value. It must be in the same namespace as the /// ImageUpdateAutomation. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")] - pub secret_ref: Option, + #[serde(rename = "secretRef")] + pub secret_ref: ImageUpdateAutomationGitCommitSigningKeySecretRef, } /// SecretRef holds the name to a secret that contains a 'git.asc' key diff --git a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagepolicies.rs b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagepolicies.rs index bc6ce1fc2..ba93aff40 100644 --- a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagepolicies.rs +++ b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagepolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagepolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagerepositories.rs b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagerepositories.rs index c2ceb5c3a..f1557db64 100644 --- a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagerepositories.rs +++ b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imagerepositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/image-reflector-controller/image.toolkit.fluxcd.io/v1beta2/imagerepositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -28,19 +28,16 @@ pub struct ImageRepositorySpec { /// CertSecretRef can be given the name of a Secret containing /// either or both of /// - /// /// - a PEM-encoded client certificate (`tls.crt`) and private /// key (`tls.key`); /// - a PEM-encoded CA certificate (`ca.crt`) /// - /// /// and whichever are supplied, will be used for connecting to the /// registry. The client cert and key are useful if you are /// authenticating with a certificate; the CA cert is useful if /// you are using a self-signed server certificate. The Secret must /// be of type `Opaque` or `kubernetes.io/tls`. /// - /// /// Note: Support for the `caFile`, `certFile` and `keyFile` keys has /// been deprecated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "certSecretRef")] @@ -50,19 +47,21 @@ pub struct ImageRepositorySpec { #[serde(default, skip_serializing_if = "Option::is_none", rename = "exclusionList")] pub exclusion_list: Option>, /// Image is the name of the image repository - #[serde(default, skip_serializing_if = "Option::is_none")] - pub image: Option, + pub image: String, /// Insecure allows connecting to a non-TLS HTTP container registry. #[serde(default, skip_serializing_if = "Option::is_none")] pub insecure: Option, /// Interval is the length of time to wait between /// scans of the image repository. - #[serde(default, skip_serializing_if = "Option::is_none")] - pub interval: Option, + pub interval: String, /// The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'. /// When not specified, defaults to 'generic'. #[serde(default, skip_serializing_if = "Option::is_none")] pub provider: Option, + /// ProxySecretRef specifies the Secret containing the proxy configuration + /// to use while communicating with the container registry. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxySecretRef")] + pub proxy_secret_ref: Option, /// SecretRef can be given the name of a secret containing /// credentials to use for the image registry. The secret should be /// created with `kubectl create secret docker-registry`, or the @@ -107,19 +106,16 @@ pub struct ImageRepositoryAccessFromNamespaceSelectors { /// CertSecretRef can be given the name of a Secret containing /// either or both of /// -/// /// - a PEM-encoded client certificate (`tls.crt`) and private /// key (`tls.key`); /// - a PEM-encoded CA certificate (`ca.crt`) /// -/// /// and whichever are supplied, will be used for connecting to the /// registry. The client cert and key are useful if you are /// authenticating with a certificate; the CA cert is useful if /// you are using a self-signed server certificate. The Secret must /// be of type `Opaque` or `kubernetes.io/tls`. /// -/// /// Note: Support for the `caFile`, `certFile` and `keyFile` keys has /// been deprecated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] @@ -142,6 +138,14 @@ pub enum ImageRepositoryProvider { Gcp, } +/// ProxySecretRef specifies the Secret containing the proxy configuration +/// to use while communicating with the container registry. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ImageRepositoryProxySecretRef { + /// Name of the referent. + pub name: String, +} + /// SecretRef can be given the name of a secret containing /// credentials to use for the image registry. The secret should be /// created with `kubectl create secret docker-registry`, or the diff --git a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imageupdateautomations.rs b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imageupdateautomations.rs index d3f3d8318..a4df59af2 100644 --- a/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imageupdateautomations.rs +++ b/kube-custom-resources-rs/src/image_toolkit_fluxcd_io/v1beta2/imageupdateautomations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/image-automation-controller/image.toolkit.fluxcd.io/v1beta2/imageupdateautomations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -85,14 +85,12 @@ pub struct ImageUpdateAutomationGitCheckoutRef { pub branch: Option, /// Commit SHA to check out, takes precedence over all reference fields. /// - /// /// This can be combined with Branch to shallow clone the branch, in which /// the commit is expected to exist. #[serde(default, skip_serializing_if = "Option::is_none")] pub commit: Option, /// Name of the reference to check out; takes precedence over Branch, Tag and SemVer. /// - /// /// It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description /// Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head" #[serde(default, skip_serializing_if = "Option::is_none")] @@ -138,8 +136,8 @@ pub struct ImageUpdateAutomationGitCommitSigningKey { /// corresponding to the ASCII Armored file containing the GPG signing /// keypair as the value. It must be in the same namespace as the /// ImageUpdateAutomation. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")] - pub secret_ref: Option, + #[serde(rename = "secretRef")] + pub secret_ref: ImageUpdateAutomationGitCommitSigningKeySecretRef, } /// SecretRef holds the name to a secret that contains a 'git.asc' key diff --git a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomeventbridges.rs b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomeventbridges.rs index e2cfe8168..b8872d311 100644 --- a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomeventbridges.rs +++ b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomeventbridges.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Alvearie/imaging-ingestion/imaging-ingestion.alvearie.org/v1alpha1/dicomeventbridges.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomeventdriveningestions.rs b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomeventdriveningestions.rs index 155b9bef8..d3a90b6b2 100644 --- a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomeventdriveningestions.rs +++ b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomeventdriveningestions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Alvearie/imaging-ingestion/imaging-ingestion.alvearie.org/v1alpha1/dicomeventdriveningestions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicominstancebindings.rs b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicominstancebindings.rs index 80247caa7..7a8b0d9ee 100644 --- a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicominstancebindings.rs +++ b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicominstancebindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Alvearie/imaging-ingestion/imaging-ingestion.alvearie.org/v1alpha1/dicominstancebindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomstudybindings.rs b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomstudybindings.rs index 90103aa37..b2cd7e0e7 100644 --- a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomstudybindings.rs +++ b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomstudybindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Alvearie/imaging-ingestion/imaging-ingestion.alvearie.org/v1alpha1/dicomstudybindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomwebingestionservices.rs b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomwebingestionservices.rs index ff69862d3..76bc2e94e 100644 --- a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomwebingestionservices.rs +++ b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dicomwebingestionservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Alvearie/imaging-ingestion/imaging-ingestion.alvearie.org/v1alpha1/dicomwebingestionservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dimseingestionservices.rs b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dimseingestionservices.rs index 06ba5bbe5..a21e19005 100644 --- a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dimseingestionservices.rs +++ b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dimseingestionservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Alvearie/imaging-ingestion/imaging-ingestion.alvearie.org/v1alpha1/dimseingestionservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dimseproxies.rs b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dimseproxies.rs index 181a6ee30..9068188a8 100644 --- a/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dimseproxies.rs +++ b/kube-custom-resources-rs/src/imaging_ingestion_alvearie_org/v1alpha1/dimseproxies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Alvearie/imaging-ingestion/imaging-ingestion.alvearie.org/v1alpha1/dimseproxies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/inference_kubedl_io/v1alpha1/elasticbatchjobs.rs b/kube-custom-resources-rs/src/inference_kubedl_io/v1alpha1/elasticbatchjobs.rs index fb68cee78..3be49ae3f 100644 --- a/kube-custom-resources-rs/src/inference_kubedl_io/v1alpha1/elasticbatchjobs.rs +++ b/kube-custom-resources-rs/src/inference_kubedl_io/v1alpha1/elasticbatchjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/inference.kubedl.io/v1alpha1/elasticbatchjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infinispan_org/v1/infinispans.rs b/kube-custom-resources-rs/src/infinispan_org/v1/infinispans.rs index caa30c3ec..6a4673c66 100644 --- a/kube-custom-resources-rs/src/infinispan_org/v1/infinispans.rs +++ b/kube-custom-resources-rs/src/infinispan_org/v1/infinispans.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/infinispan/infinispan-operator/infinispan.org/v1/infinispans.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -2027,6 +2027,9 @@ pub struct InfinispanStatusHotRodRollingUpgradeStatus { /// The Operand status #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct InfinispanStatusOperand { + /// Whether the Operand installed/pending is using a custom image + #[serde(default, skip_serializing_if = "Option::is_none", rename = "customImage")] + pub custom_image: Option, /// Whether the Operand has been deprecated and is subject for removal in a subsequent release #[serde(default, skip_serializing_if = "Option::is_none")] pub deprecated: Option, diff --git a/kube-custom-resources-rs/src/infinispan_org/v2alpha1/backups.rs b/kube-custom-resources-rs/src/infinispan_org/v2alpha1/backups.rs index a05cb935f..c3f751ef0 100644 --- a/kube-custom-resources-rs/src/infinispan_org/v2alpha1/backups.rs +++ b/kube-custom-resources-rs/src/infinispan_org/v2alpha1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/infinispan/infinispan-operator/infinispan.org/v2alpha1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infinispan_org/v2alpha1/batches.rs b/kube-custom-resources-rs/src/infinispan_org/v2alpha1/batches.rs index 6879c5693..d81eb6f2e 100644 --- a/kube-custom-resources-rs/src/infinispan_org/v2alpha1/batches.rs +++ b/kube-custom-resources-rs/src/infinispan_org/v2alpha1/batches.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/infinispan/infinispan-operator/infinispan.org/v2alpha1/batches.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infinispan_org/v2alpha1/caches.rs b/kube-custom-resources-rs/src/infinispan_org/v2alpha1/caches.rs index fbbf581fe..f7710d0c5 100644 --- a/kube-custom-resources-rs/src/infinispan_org/v2alpha1/caches.rs +++ b/kube-custom-resources-rs/src/infinispan_org/v2alpha1/caches.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/infinispan/infinispan-operator/infinispan.org/v2alpha1/caches.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infinispan_org/v2alpha1/restores.rs b/kube-custom-resources-rs/src/infinispan_org/v2alpha1/restores.rs index 9093835fd..eb18c8f40 100644 --- a/kube-custom-resources-rs/src/infinispan_org/v2alpha1/restores.rs +++ b/kube-custom-resources-rs/src/infinispan_org/v2alpha1/restores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/infinispan/infinispan-operator/infinispan.org/v2alpha1/restores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infra_contrib_fluxcd_io/v1alpha1/terraforms.rs b/kube-custom-resources-rs/src/infra_contrib_fluxcd_io/v1alpha1/terraforms.rs index 3dfee97ee..ec4fdeb26 100644 --- a/kube-custom-resources-rs/src/infra_contrib_fluxcd_io/v1alpha1/terraforms.rs +++ b/kube-custom-resources-rs/src/infra_contrib_fluxcd_io/v1alpha1/terraforms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/weaveworks/tf-controller/infra.contrib.fluxcd.io/v1alpha1/terraforms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infra_contrib_fluxcd_io/v1alpha2/terraforms.rs b/kube-custom-resources-rs/src/infra_contrib_fluxcd_io/v1alpha2/terraforms.rs index 5edc2225c..8b363e1ac 100644 --- a/kube-custom-resources-rs/src/infra_contrib_fluxcd_io/v1alpha2/terraforms.rs +++ b/kube-custom-resources-rs/src/infra_contrib_fluxcd_io/v1alpha2/terraforms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/weaveworks/tf-controller/infra.contrib.fluxcd.io/v1alpha2/terraforms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtclusters.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtclusters.rs index abb92110c..83123903d 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtclusters.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-kubevirt/infrastructure.cluster.x-k8s.io/v1alpha1/kubevirtclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -32,7 +33,7 @@ pub struct KubevirtClusterSpec { pub control_plane_service_template: Option, /// InfraClusterSecretRef is a reference to a secret with a kubeconfig for external cluster used for infra. #[serde(default, skip_serializing_if = "Option::is_none", rename = "infraClusterSecretRef")] - pub infra_cluster_secret_ref: Option, + pub infra_cluster_secret_ref: Option, /// SSHKeys is a reference to a local struct for SSH keys persistence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "sshKeys")] pub ssh_keys: Option, @@ -121,7 +122,7 @@ pub struct KubevirtClusterSshKeys { /// The reference is optional to allow users/operators to specify /// Bootstrap.DataSecretName without the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// DataSecretName is the name of the secret that stores ssh keys. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSecretName")] pub data_secret_name: Option, diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtclustertemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtclustertemplates.rs index 8680fc185..492b00ffe 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtclustertemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtclustertemplates.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-kubevirt/infrastructure.cluster.x-k8s.io/v1alpha1/kubevirtclustertemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -112,7 +113,7 @@ pub struct KubevirtClusterTemplateTemplateSpec { pub control_plane_service_template: Option, /// InfraClusterSecretRef is a reference to a secret with a kubeconfig for external cluster used for infra. #[serde(default, skip_serializing_if = "Option::is_none", rename = "infraClusterSecretRef")] - pub infra_cluster_secret_ref: Option, + pub infra_cluster_secret_ref: Option, /// SSHKeys is a reference to a local struct for SSH keys persistence. #[serde(default, skip_serializing_if = "Option::is_none", rename = "sshKeys")] pub ssh_keys: Option, @@ -201,7 +202,7 @@ pub struct KubevirtClusterTemplateTemplateSpecSshKeys { /// The reference is optional to allow users/operators to specify /// Bootstrap.DataSecretName without the need of a controller. #[serde(default, skip_serializing_if = "Option::is_none", rename = "configRef")] - pub config_ref: Option, + pub config_ref: Option, /// DataSecretName is the name of the secret that stores ssh keys. #[serde(default, skip_serializing_if = "Option::is_none", rename = "dataSecretName")] pub data_secret_name: Option, diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtmachines.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtmachines.rs index 57b713c57..8c93dd275 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtmachines.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtmachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-kubevirt/infrastructure.cluster.x-k8s.io/v1alpha1/kubevirtmachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -24,7 +25,7 @@ pub struct KubevirtMachineSpec { /// InfraClusterSecretRef is a reference to a secret with a kubeconfig for external cluster used for infra. /// When nil, this defaults to the value present in the KubevirtCluster object's spec associated with this machine. #[serde(default, skip_serializing_if = "Option::is_none", rename = "infraClusterSecretRef")] - pub infra_cluster_secret_ref: Option, + pub infra_cluster_secret_ref: Option, /// ProviderID TBD what to use for Kubevirt #[serde(default, skip_serializing_if = "Option::is_none", rename = "providerID")] pub provider_id: Option, diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtmachinetemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtmachinetemplates.rs index c2d871e67..2fa02b7b9 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtmachinetemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha1/kubevirtmachinetemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-kubevirt/infrastructure.cluster.x-k8s.io/v1alpha1/kubevirtmachinetemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -36,7 +37,7 @@ pub struct KubevirtMachineTemplateTemplateSpec { /// InfraClusterSecretRef is a reference to a secret with a kubeconfig for external cluster used for infra. /// When nil, this defaults to the value present in the KubevirtCluster object's spec associated with this machine. #[serde(default, skip_serializing_if = "Option::is_none", rename = "infraClusterSecretRef")] - pub infra_cluster_secret_ref: Option, + pub infra_cluster_secret_ref: Option, /// ProviderID TBD what to use for Kubevirt #[serde(default, skip_serializing_if = "Option::is_none", rename = "providerID")] pub provider_id: Option, diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vsphereclusteridentities.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vsphereclusteridentities.rs index 7ac5531d1..d6c5a4f61 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vsphereclusteridentities.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vsphereclusteridentities.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha3/vsphereclusteridentities.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vsphereclusters.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vsphereclusters.rs index 2e1ed6f32..f6b6516d3 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vsphereclusters.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vsphereclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha3/vsphereclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -49,7 +50,7 @@ pub struct VSphereClusterSpec { /// /// Deprecated: will be removed in v1alpha4. #[serde(default, skip_serializing_if = "Option::is_none", rename = "loadBalancerRef")] - pub load_balancer_ref: Option, + pub load_balancer_ref: Option, /// Server is the address of the vSphere endpoint. #[serde(default, skip_serializing_if = "Option::is_none")] pub server: Option, diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheredeploymentzones.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheredeploymentzones.rs index 3ac0262f3..a82926447 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheredeploymentzones.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheredeploymentzones.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha3/vspheredeploymentzones.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspherefailuredomains.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspherefailuredomains.rs index dac977b5b..6d1a2dc50 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspherefailuredomains.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspherefailuredomains.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha3/vspherefailuredomains.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheremachines.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheremachines.rs index e019f4db8..f86dc7633 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheremachines.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheremachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha3/vspheremachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheremachinetemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheremachinetemplates.rs index dbb96ab3a..21d4f4bc7 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheremachinetemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspheremachinetemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha3/vspheremachinetemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspherevms.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspherevms.rs index cbd4305c7..2cabc00f9 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspherevms.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha3/vspherevms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha3/vspherevms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -31,7 +32,7 @@ pub struct VSphereVMSpec { /// This field is optional in case no bootstrap data is required to create /// a VM. #[serde(default, skip_serializing_if = "Option::is_none", rename = "bootstrapRef")] - pub bootstrap_ref: Option, + pub bootstrap_ref: Option, /// CloneMode specifies the type of clone operation. /// The LinkedClone mode is only support for templates that have at least /// one snapshot. If the template has no snapshots, then CloneMode defaults diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclusteridentities.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclusteridentities.rs index dd9efaa1e..ad4838c70 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclusteridentities.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclusteridentities.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha4/vsphereclusteridentities.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclusters.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclusters.rs index 1cca49d8b..c37da9d64 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclusters.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha4/vsphereclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclustertemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclustertemplates.rs index cab76bfea..6f0a06b85 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclustertemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vsphereclustertemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha4/vsphereclustertemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheredeploymentzones.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheredeploymentzones.rs index 0a8371037..d39b0aa4a 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheredeploymentzones.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheredeploymentzones.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha4/vspheredeploymentzones.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspherefailuredomains.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspherefailuredomains.rs index eecfc5d9e..fb4b90808 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspherefailuredomains.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspherefailuredomains.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha4/vspherefailuredomains.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheremachines.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheremachines.rs index 3ec7af7f5..a4a2d26de 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheremachines.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheremachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha4/vspheremachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheremachinetemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheremachinetemplates.rs index 5331746fa..401d9ea3f 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheremachinetemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspheremachinetemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha4/vspheremachinetemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspherevms.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspherevms.rs index f42512152..8e573a0dd 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspherevms.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1alpha4/vspherevms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1alpha4/vspherevms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -31,7 +32,7 @@ pub struct VSphereVMSpec { /// This field is optional in case no bootstrap data is required to create /// a VM. #[serde(default, skip_serializing_if = "Option::is_none", rename = "bootstrapRef")] - pub bootstrap_ref: Option, + pub bootstrap_ref: Option, /// CloneMode specifies the type of clone operation. /// The LinkedClone mode is only support for templates that have at least /// one snapshot. If the template has no snapshots, then CloneMode defaults diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsclusters.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsclusters.rs index 76b2e1bf5..09c3bfa29 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsclusters.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta1/ibmpowervsclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsclustertemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsclustertemplates.rs index 9782275de..9e0468822 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsclustertemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsclustertemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta1/ibmpowervsclustertemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsimages.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsimages.rs index 4aeb318dc..32deb7827 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsimages.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsimages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta1/ibmpowervsimages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsmachines.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsmachines.rs index 4d9ad3c2e..e518efd3f 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsmachines.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsmachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta1/ibmpowervsmachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsmachinetemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsmachinetemplates.rs index 16b381334..ae74e2845 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsmachinetemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmpowervsmachinetemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta1/ibmpowervsmachinetemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcclusters.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcclusters.rs index f4f02a5bf..679ee4ce2 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcclusters.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta1/ibmvpcclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcmachines.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcmachines.rs index bb90079b6..8d7bbe470 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcmachines.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcmachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta1/ibmvpcmachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcmachinetemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcmachinetemplates.rs index 85785b6db..da06e2c93 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcmachinetemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/ibmvpcmachinetemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta1/ibmvpcmachinetemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellclusters.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellclusters.rs index 75f43bb7a..6d15ae216 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellclusters.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -20,7 +20,6 @@ use self::prelude::*; pub struct TinkerbellClusterSpec { /// ControlPlaneEndpoint is a required field by ClusterAPI v1beta1. /// - /// /// See https://cluster-api.sigs.k8s.io/developer/architecture/controllers/cluster.html /// for more details. #[serde(default, skip_serializing_if = "Option::is_none", rename = "controlPlaneEndpoint")] @@ -55,7 +54,6 @@ pub struct TinkerbellClusterSpec { /// ControlPlaneEndpoint is a required field by ClusterAPI v1beta1. /// -/// /// See https://cluster-api.sigs.k8s.io/developer/architecture/controllers/cluster.html /// for more details. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellmachines.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellmachines.rs index 3e8c0a674..fe80ac363 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellmachines.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellmachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellmachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -170,7 +170,6 @@ pub struct TinkerbellMachineStatus { /// reconciling the Machine and will contain a more verbose string suitable /// for logging and human consumption. /// - /// /// This field should not be set for transitive errors that a controller /// faces that are expected to be fixed automatically over /// time (like service outages), but instead indicate that something is @@ -180,7 +179,6 @@ pub struct TinkerbellMachineStatus { /// spec, values that are unsupported by the controller, or the /// responsible controller itself being critically misconfigured. /// - /// /// Any transient errors that occur during the reconciliation of Machines /// can be added as events to the Machine object and/or logged in the /// controller's output. diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellmachinetemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellmachinetemplates.rs index 1cd533f60..6f58397d4 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellmachinetemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/tinkerbellmachinetemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/cluster-api-provider-tinkerbell/infrastructure.cluster.x-k8s.io/v1beta1/tinkerbellmachinetemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclusteridentities.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclusteridentities.rs index 1f30772c2..a1371ff4b 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclusteridentities.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclusteridentities.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1beta1/vsphereclusteridentities.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclusters.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclusters.rs index a528b948e..8a31be0cf 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclusters.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1beta1/vsphereclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclustertemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclustertemplates.rs index 8d6d2948b..5cca0b9df 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclustertemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vsphereclustertemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1beta1/vsphereclustertemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheredeploymentzones.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheredeploymentzones.rs index 5209a0ea6..14f30ec31 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheredeploymentzones.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheredeploymentzones.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1beta1/vspheredeploymentzones.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspherefailuredomains.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspherefailuredomains.rs index 56028c9e9..00f5555ae 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspherefailuredomains.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspherefailuredomains.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1beta1/vspherefailuredomains.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheremachines.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheremachines.rs index a9b72310b..1621447c1 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheremachines.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheremachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1beta1/vspheremachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheremachinetemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheremachinetemplates.rs index 5619d680a..a41ec205c 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheremachinetemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspheremachinetemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1beta1/vspheremachinetemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspherevms.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspherevms.rs index 10b64c606..953fd5f31 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspherevms.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta1/vspherevms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-vsphere/infrastructure.cluster.x-k8s.io/v1beta1/vspherevms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -36,7 +37,7 @@ pub struct VSphereVMSpec { /// This field is optional in case no bootstrap data is required to create /// a VM. #[serde(default, skip_serializing_if = "Option::is_none", rename = "bootstrapRef")] - pub bootstrap_ref: Option, + pub bootstrap_ref: Option, /// CloneMode specifies the type of clone operation. /// The LinkedClone mode is only support for templates that have at least /// one snapshot. If the template has no snapshots, then CloneMode defaults diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsclusters.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsclusters.rs index 81a588a59..24212696a 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsclusters.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmpowervsclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -808,6 +808,34 @@ pub struct IBMPowerVSClusterStatusTransitGateway { /// id represents the id of the resource. #[serde(default, skip_serializing_if = "Option::is_none")] pub id: Option, + /// powerVSConnection defines the powervs connection status in transit gateway. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "powerVSConnection")] + pub power_vs_connection: Option, + /// vpcConnection defines the vpc connection status in transit gateway. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "vpcConnection")] + pub vpc_connection: Option, +} + +/// powerVSConnection defines the powervs connection status in transit gateway. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct IBMPowerVSClusterStatusTransitGatewayPowerVsConnection { + /// controllerCreated indicates whether the resource is created by the controller. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "controllerCreated")] + pub controller_created: Option, + /// id represents the id of the resource. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub id: Option, +} + +/// vpcConnection defines the vpc connection status in transit gateway. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct IBMPowerVSClusterStatusTransitGatewayVpcConnection { + /// controllerCreated indicates whether the resource is created by the controller. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "controllerCreated")] + pub controller_created: Option, + /// id represents the id of the resource. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub id: Option, } /// vpc is reference to IBM Cloud VPC resources. diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsclustertemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsclustertemplates.rs index acdbd8e14..0e7a01706 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsclustertemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsclustertemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmpowervsclustertemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsimages.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsimages.rs index ac37d72db..9bd33d53e 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsimages.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsimages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmpowervsimages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsmachines.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsmachines.rs index 1b2887e14..ed22c34af 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsmachines.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsmachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmpowervsmachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsmachinetemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsmachinetemplates.rs index 395479d20..1040be4e3 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsmachinetemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmpowervsmachinetemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmpowervsmachinetemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcclusters.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcclusters.rs index dd162af8a..e18eff146 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcclusters.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmvpcclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcmachines.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcmachines.rs index 35ac83584..4930bf07e 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcmachines.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcmachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmvpcmachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcmachinetemplates.rs b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcmachinetemplates.rs index 85c7d4c43..69f43a1be 100644 --- a/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcmachinetemplates.rs +++ b/kube-custom-resources-rs/src/infrastructure_cluster_x_k8s_io/v1beta2/ibmvpcmachinetemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-provider-ibmcloud/infrastructure.cluster.x-k8s.io/v1beta2/ibmvpcmachinetemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/install_istio_io/v1alpha1/istiooperators.rs b/kube-custom-resources-rs/src/install_istio_io/v1alpha1/istiooperators.rs index 05f866fdf..3738fa294 100644 --- a/kube-custom-resources-rs/src/install_istio_io/v1alpha1/istiooperators.rs +++ b/kube-custom-resources-rs/src/install_istio_io/v1alpha1/istiooperators.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/install.istio.io/v1alpha1/istiooperators.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/installation_mattermost_com/v1beta1/mattermosts.rs b/kube-custom-resources-rs/src/installation_mattermost_com/v1beta1/mattermosts.rs index 8041c5b12..2680d4bbf 100644 --- a/kube-custom-resources-rs/src/installation_mattermost_com/v1beta1/mattermosts.rs +++ b/kube-custom-resources-rs/src/installation_mattermost_com/v1beta1/mattermosts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mattermost/mattermost-operator/installation.mattermost.com/v1beta1/mattermosts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/instana_io/v1/agents.rs b/kube-custom-resources-rs/src/instana_io/v1/agents.rs index c21f03557..8d04c6375 100644 --- a/kube-custom-resources-rs/src/instana_io/v1/agents.rs +++ b/kube-custom-resources-rs/src/instana_io/v1/agents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/instana/instana-agent-operator/instana.io/v1/agents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/deferredresources.rs b/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/deferredresources.rs index 26581a693..5917e530c 100644 --- a/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/deferredresources.rs +++ b/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/deferredresources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bitspur/rock8s/integration-operator/integration.rock8s.com/v1beta1/deferredresources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/plugs.rs b/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/plugs.rs index d85226d5a..8be0db299 100644 --- a/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/plugs.rs +++ b/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/plugs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bitspur/rock8s/integration-operator/integration.rock8s.com/v1beta1/plugs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/sockets.rs b/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/sockets.rs index 2ce91c7db..8c1212baf 100644 --- a/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/sockets.rs +++ b/kube-custom-resources-rs/src/integration_rock8s_com/v1beta1/sockets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/bitspur/rock8s/integration-operator/integration.rock8s.com/v1beta1/sockets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/iot_eclipse_org/v1alpha1/dittos.rs b/kube-custom-resources-rs/src/iot_eclipse_org/v1alpha1/dittos.rs index f52525199..b147ff675 100644 --- a/kube-custom-resources-rs/src/iot_eclipse_org/v1alpha1/dittos.rs +++ b/kube-custom-resources-rs/src/iot_eclipse_org/v1alpha1/dittos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ctron/ditto-operator/iot.eclipse.org/v1alpha1/dittos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/iot_eclipse_org/v1alpha1/hawkbits.rs b/kube-custom-resources-rs/src/iot_eclipse_org/v1alpha1/hawkbits.rs index f9df55250..913a6ac0e 100644 --- a/kube-custom-resources-rs/src/iot_eclipse_org/v1alpha1/hawkbits.rs +++ b/kube-custom-resources-rs/src/iot_eclipse_org/v1alpha1/hawkbits.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ctron/hawkbit-operator/iot.eclipse.org/v1alpha1/hawkbits.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1alpha1/ipaddressclaims.rs b/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1alpha1/ipaddressclaims.rs index 3cdb8f8f2..8971f67e8 100644 --- a/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1alpha1/ipaddressclaims.rs +++ b/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1alpha1/ipaddressclaims.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/ipam.cluster.x-k8s.io/v1alpha1/ipaddressclaims.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1alpha1/ipaddresses.rs b/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1alpha1/ipaddresses.rs index 7ad493fd8..f4ae535e7 100644 --- a/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1alpha1/ipaddresses.rs +++ b/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1alpha1/ipaddresses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/ipam.cluster.x-k8s.io/v1alpha1/ipaddresses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1beta1/ipaddressclaims.rs b/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1beta1/ipaddressclaims.rs index 79162e012..78279debb 100644 --- a/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1beta1/ipaddressclaims.rs +++ b/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1beta1/ipaddressclaims.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/ipam.cluster.x-k8s.io/v1beta1/ipaddressclaims.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1beta1/ipaddresses.rs b/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1beta1/ipaddresses.rs index 6b8d8a0c5..65aec85f5 100644 --- a/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1beta1/ipaddresses.rs +++ b/kube-custom-resources-rs/src/ipam_cluster_x_k8s_io/v1beta1/ipaddresses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/ipam.cluster.x-k8s.io/v1beta1/ipaddresses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/isindir_github_com/v1alpha1/sopssecrets.rs b/kube-custom-resources-rs/src/isindir_github_com/v1alpha1/sopssecrets.rs index fee39e364..e8967f137 100644 --- a/kube-custom-resources-rs/src/isindir_github_com/v1alpha1/sopssecrets.rs +++ b/kube-custom-resources-rs/src/isindir_github_com/v1alpha1/sopssecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/isindir/sops-secrets-operator/isindir.github.com/v1alpha1/sopssecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/isindir_github_com/v1alpha2/sopssecrets.rs b/kube-custom-resources-rs/src/isindir_github_com/v1alpha2/sopssecrets.rs index 5023e858a..500fcaaa7 100644 --- a/kube-custom-resources-rs/src/isindir_github_com/v1alpha2/sopssecrets.rs +++ b/kube-custom-resources-rs/src/isindir_github_com/v1alpha2/sopssecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/isindir/sops-secrets-operator/isindir.github.com/v1alpha2/sopssecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/isindir_github_com/v1alpha3/sopssecrets.rs b/kube-custom-resources-rs/src/isindir_github_com/v1alpha3/sopssecrets.rs index 222042c8e..012661939 100644 --- a/kube-custom-resources-rs/src/isindir_github_com/v1alpha3/sopssecrets.rs +++ b/kube-custom-resources-rs/src/isindir_github_com/v1alpha3/sopssecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/isindir/sops-secrets-operator/isindir.github.com/v1alpha3/sopssecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/jaegertracing_io/v1/jaegers.rs b/kube-custom-resources-rs/src/jaegertracing_io/v1/jaegers.rs index b6c91805e..a3d1621bc 100644 --- a/kube-custom-resources-rs/src/jaegertracing_io/v1/jaegers.rs +++ b/kube-custom-resources-rs/src/jaegertracing_io/v1/jaegers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/jaegertracing/jaeger-operator/jaegertracing.io/v1/jaegers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/jobset_x_k8s_io/v1alpha2/jobsets.rs b/kube-custom-resources-rs/src/jobset_x_k8s_io/v1alpha2/jobsets.rs index 63182f764..b26303bfa 100644 --- a/kube-custom-resources-rs/src/jobset_x_k8s_io/v1alpha2/jobsets.rs +++ b/kube-custom-resources-rs/src/jobset_x_k8s_io/v1alpha2/jobsets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/jobset/jobset.x-k8s.io/v1alpha2/jobsets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/jobsmanager_raczylo_com/v1beta1/managedjobs.rs b/kube-custom-resources-rs/src/jobsmanager_raczylo_com/v1beta1/managedjobs.rs index f16bed912..1c1b150c8 100644 --- a/kube-custom-resources-rs/src/jobsmanager_raczylo_com/v1beta1/managedjobs.rs +++ b/kube-custom-resources-rs/src/jobsmanager_raczylo_com/v1beta1/managedjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/lukaszraczylo/jobs-manager-operator/jobsmanager.raczylo.com/v1beta1/managedjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k6_io/v1alpha1/k6s.rs b/kube-custom-resources-rs/src/k6_io/v1alpha1/k6s.rs index c03ccddbe..6d08991fb 100644 --- a/kube-custom-resources-rs/src/k6_io/v1alpha1/k6s.rs +++ b/kube-custom-resources-rs/src/k6_io/v1alpha1/k6s.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/k6-operator/k6.io/v1alpha1/k6s.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k6_io/v1alpha1/privateloadzones.rs b/kube-custom-resources-rs/src/k6_io/v1alpha1/privateloadzones.rs index 6f7ef487e..6d2e84549 100644 --- a/kube-custom-resources-rs/src/k6_io/v1alpha1/privateloadzones.rs +++ b/kube-custom-resources-rs/src/k6_io/v1alpha1/privateloadzones.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/k6-operator/k6.io/v1alpha1/privateloadzones.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k6_io/v1alpha1/testruns.rs b/kube-custom-resources-rs/src/k6_io/v1alpha1/testruns.rs index f7f0a837d..2955b7d0d 100644 --- a/kube-custom-resources-rs/src/k6_io/v1alpha1/testruns.rs +++ b/kube-custom-resources-rs/src/k6_io/v1alpha1/testruns.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/k6-operator/k6.io/v1alpha1/testruns.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8gb_absa_oss/v1beta1/gslbs.rs b/kube-custom-resources-rs/src/k8gb_absa_oss/v1beta1/gslbs.rs index 1304ad030..53338b277 100644 --- a/kube-custom-resources-rs/src/k8gb_absa_oss/v1beta1/gslbs.rs +++ b/kube-custom-resources-rs/src/k8gb_absa_oss/v1beta1/gslbs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8gb-io/k8gb/k8gb.absa.oss/v1beta1/gslbs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_keycloak_org/v2alpha1/keycloakrealmimports.rs b/kube-custom-resources-rs/src/k8s_keycloak_org/v2alpha1/keycloakrealmimports.rs index ea6513e91..bab2c97e7 100644 --- a/kube-custom-resources-rs/src/k8s_keycloak_org/v2alpha1/keycloakrealmimports.rs +++ b/kube-custom-resources-rs/src/k8s_keycloak_org/v2alpha1/keycloakrealmimports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/keycloak/keycloak-k8s-resources/k8s.keycloak.org/v2alpha1/keycloakrealmimports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_keycloak_org/v2alpha1/keycloaks.rs b/kube-custom-resources-rs/src/k8s_keycloak_org/v2alpha1/keycloaks.rs index f704103e0..797b885b2 100644 --- a/kube-custom-resources-rs/src/k8s_keycloak_org/v2alpha1/keycloaks.rs +++ b/kube-custom-resources-rs/src/k8s_keycloak_org/v2alpha1/keycloaks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/keycloak/keycloak-k8s-resources/k8s.keycloak.org/v2alpha1/keycloaks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/backups.rs b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/backups.rs index 7028a3f67..461f23e29 100644 --- a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/backups.rs +++ b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/connections.rs b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/connections.rs index e7e6aa835..2d93f1df3 100644 --- a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/connections.rs +++ b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/connections.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/connections.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -34,7 +35,7 @@ pub struct ConnectionSpec { pub maria_db_ref: Option, /// MaxScaleRef is a reference to the MaxScale to connect to. Either MariaDBRef or MaxScaleRef must be provided. #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxScaleRef")] - pub max_scale_ref: Option, + pub max_scale_ref: Option, /// Params to be used in the Connection. #[serde(default, skip_serializing_if = "Option::is_none")] pub params: Option>, diff --git a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/databases.rs b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/databases.rs index dd7797434..3850a87b8 100644 --- a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/databases.rs +++ b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/databases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/databases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/grants.rs b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/grants.rs index fb05b2194..3e7d4c7be 100644 --- a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/grants.rs +++ b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/grants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/grants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/mariadbs.rs b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/mariadbs.rs index 9eeeed594..92f7ca7cf 100644 --- a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/mariadbs.rs +++ b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/mariadbs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/mariadbs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -76,7 +77,7 @@ pub struct MariaDBSpec { /// MaxScaleRef is a reference to a MaxScale resource to be used with the current MariaDB. /// Providing this field implies delegating high availability tasks such as primary failover to MaxScale. #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxScaleRef")] - pub max_scale_ref: Option, + pub max_scale_ref: Option, /// Metrics configures metrics and how to scrape them. #[serde(default, skip_serializing_if = "Option::is_none")] pub metrics: Option, @@ -6184,6 +6185,9 @@ pub struct MariaDBGaleraRecoveryJob { /// Metadata defines additional metadata for the Galera recovery Jobs. #[serde(default, skip_serializing_if = "Option::is_none")] pub metadata: Option, + /// PodAffinity indicates whether the recovery Jobs should run in the same Node as the MariaDB Pods. It defaults to true. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "podAffinity")] + pub pod_affinity: Option, /// Resouces describes the compute resource requirements. #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, diff --git a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/maxscales.rs b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/maxscales.rs index 8d0f09ed6..eb94e75c5 100644 --- a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/maxscales.rs +++ b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/maxscales.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/maxscales.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/restores.rs b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/restores.rs index fab455654..a825eae84 100644 --- a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/restores.rs +++ b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/restores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/restores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/sqljobs.rs b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/sqljobs.rs index b028a1070..d6f479a41 100644 --- a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/sqljobs.rs +++ b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/sqljobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/sqljobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/users.rs b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/users.rs index 932f03129..ad709ffce 100644 --- a/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/users.rs +++ b/kube-custom-resources-rs/src/k8s_mariadb_com/v1alpha1/users.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/k8s.mariadb.com/v1alpha1/users.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_nginx_org/v1/globalconfigurations.rs b/kube-custom-resources-rs/src/k8s_nginx_org/v1/globalconfigurations.rs index 909dd20f3..82fab89f1 100644 --- a/kube-custom-resources-rs/src/k8s_nginx_org/v1/globalconfigurations.rs +++ b/kube-custom-resources-rs/src/k8s_nginx_org/v1/globalconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/k8s.nginx.org/v1/globalconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_nginx_org/v1/policies.rs b/kube-custom-resources-rs/src/k8s_nginx_org/v1/policies.rs index 202993a45..419c83aec 100644 --- a/kube-custom-resources-rs/src/k8s_nginx_org/v1/policies.rs +++ b/kube-custom-resources-rs/src/k8s_nginx_org/v1/policies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/k8s.nginx.org/v1/policies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_nginx_org/v1/transportservers.rs b/kube-custom-resources-rs/src/k8s_nginx_org/v1/transportservers.rs index b667eb3bd..554424d37 100644 --- a/kube-custom-resources-rs/src/k8s_nginx_org/v1/transportservers.rs +++ b/kube-custom-resources-rs/src/k8s_nginx_org/v1/transportservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/k8s.nginx.org/v1/transportservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_nginx_org/v1/virtualserverroutes.rs b/kube-custom-resources-rs/src/k8s_nginx_org/v1/virtualserverroutes.rs index 3369abdb1..0248193da 100644 --- a/kube-custom-resources-rs/src/k8s_nginx_org/v1/virtualserverroutes.rs +++ b/kube-custom-resources-rs/src/k8s_nginx_org/v1/virtualserverroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/k8s.nginx.org/v1/virtualserverroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_nginx_org/v1/virtualservers.rs b/kube-custom-resources-rs/src/k8s_nginx_org/v1/virtualservers.rs index 2a7424db9..b3be1b877 100644 --- a/kube-custom-resources-rs/src/k8s_nginx_org/v1/virtualservers.rs +++ b/kube-custom-resources-rs/src/k8s_nginx_org/v1/virtualservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/k8s.nginx.org/v1/virtualservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/globalconfigurations.rs b/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/globalconfigurations.rs index b846358b1..158bdc924 100644 --- a/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/globalconfigurations.rs +++ b/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/globalconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/k8s.nginx.org/v1alpha1/globalconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/policies.rs b/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/policies.rs index b557efc14..4342a03c7 100644 --- a/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/policies.rs +++ b/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/policies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/k8s.nginx.org/v1alpha1/policies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/transportservers.rs b/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/transportservers.rs index 142c9fcc5..e5e278bec 100644 --- a/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/transportservers.rs +++ b/kube-custom-resources-rs/src/k8s_nginx_org/v1alpha1/transportservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/nginxinc/kubernetes-ingress/k8s.nginx.org/v1alpha1/transportservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/clientintents.rs b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/clientintents.rs index cfb25d242..55e2a7150 100644 --- a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/clientintents.rs +++ b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/clientintents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/otterize/helm-charts/k8s.otterize.com/v1alpha2/clientintents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/kafkaserverconfigs.rs b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/kafkaserverconfigs.rs index d8b7a09b1..9d4391221 100644 --- a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/kafkaserverconfigs.rs +++ b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/kafkaserverconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/otterize/helm-charts/k8s.otterize.com/v1alpha2/kafkaserverconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/protectedservices.rs b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/protectedservices.rs index 0a02eff71..a8bcb95f5 100644 --- a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/protectedservices.rs +++ b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha2/protectedservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/otterize/helm-charts/k8s.otterize.com/v1alpha2/protectedservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/clientintents.rs b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/clientintents.rs index 234f9921d..9280d8686 100644 --- a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/clientintents.rs +++ b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/clientintents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/otterize/helm-charts/k8s.otterize.com/v1alpha3/clientintents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/kafkaserverconfigs.rs b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/kafkaserverconfigs.rs index 569735a44..3e707e70a 100644 --- a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/kafkaserverconfigs.rs +++ b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/kafkaserverconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/otterize/helm-charts/k8s.otterize.com/v1alpha3/kafkaserverconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/protectedservices.rs b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/protectedservices.rs index 914394b8e..d98ab6928 100644 --- a/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/protectedservices.rs +++ b/kube-custom-resources-rs/src/k8s_otterize_com/v1alpha3/protectedservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/otterize/helm-charts/k8s.otterize.com/v1alpha3/protectedservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8up_io/v1/archives.rs b/kube-custom-resources-rs/src/k8up_io/v1/archives.rs index ed94ce461..c795f5c87 100644 --- a/kube-custom-resources-rs/src/k8up_io/v1/archives.rs +++ b/kube-custom-resources-rs/src/k8up_io/v1/archives.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8up-io/k8up/k8up.io/v1/archives.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8up_io/v1/backups.rs b/kube-custom-resources-rs/src/k8up_io/v1/backups.rs index 9c62f3425..056f14824 100644 --- a/kube-custom-resources-rs/src/k8up_io/v1/backups.rs +++ b/kube-custom-resources-rs/src/k8up_io/v1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8up-io/k8up/k8up.io/v1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8up_io/v1/checks.rs b/kube-custom-resources-rs/src/k8up_io/v1/checks.rs index 9e756747c..5b37e00b7 100644 --- a/kube-custom-resources-rs/src/k8up_io/v1/checks.rs +++ b/kube-custom-resources-rs/src/k8up_io/v1/checks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8up-io/k8up/k8up.io/v1/checks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8up_io/v1/prebackuppods.rs b/kube-custom-resources-rs/src/k8up_io/v1/prebackuppods.rs index c76969a60..8a77ad064 100644 --- a/kube-custom-resources-rs/src/k8up_io/v1/prebackuppods.rs +++ b/kube-custom-resources-rs/src/k8up_io/v1/prebackuppods.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8up-io/k8up/k8up.io/v1/prebackuppods.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8up_io/v1/prunes.rs b/kube-custom-resources-rs/src/k8up_io/v1/prunes.rs index 588c755f2..f9c7ce054 100644 --- a/kube-custom-resources-rs/src/k8up_io/v1/prunes.rs +++ b/kube-custom-resources-rs/src/k8up_io/v1/prunes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8up-io/k8up/k8up.io/v1/prunes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8up_io/v1/restores.rs b/kube-custom-resources-rs/src/k8up_io/v1/restores.rs index f46a46ee8..faab05119 100644 --- a/kube-custom-resources-rs/src/k8up_io/v1/restores.rs +++ b/kube-custom-resources-rs/src/k8up_io/v1/restores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8up-io/k8up/k8up.io/v1/restores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8up_io/v1/schedules.rs b/kube-custom-resources-rs/src/k8up_io/v1/schedules.rs index dcb6fe705..4aae01730 100644 --- a/kube-custom-resources-rs/src/k8up_io/v1/schedules.rs +++ b/kube-custom-resources-rs/src/k8up_io/v1/schedules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8up-io/k8up/k8up.io/v1/schedules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/k8up_io/v1/snapshots.rs b/kube-custom-resources-rs/src/k8up_io/v1/snapshots.rs index 5f70579f8..df526e4d3 100644 --- a/kube-custom-resources-rs/src/k8up_io/v1/snapshots.rs +++ b/kube-custom-resources-rs/src/k8up_io/v1/snapshots.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/k8up-io/k8up/k8up.io/v1/snapshots.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/cruisecontroloperations.rs b/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/cruisecontroloperations.rs index f2b37b11d..836d1027b 100644 --- a/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/cruisecontroloperations.rs +++ b/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/cruisecontroloperations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/banzaicloud/koperator/kafka.banzaicloud.io/v1alpha1/cruisecontroloperations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/kafkatopics.rs b/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/kafkatopics.rs index 242da6ba1..6d188bd2d 100644 --- a/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/kafkatopics.rs +++ b/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/kafkatopics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/banzaicloud/koperator/kafka.banzaicloud.io/v1alpha1/kafkatopics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/kafkausers.rs b/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/kafkausers.rs index 54f5eeaf2..30ac5b83d 100644 --- a/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/kafkausers.rs +++ b/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1alpha1/kafkausers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/banzaicloud/koperator/kafka.banzaicloud.io/v1alpha1/kafkausers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1beta1/kafkaclusters.rs b/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1beta1/kafkaclusters.rs index 94c1095fb..0f10d3eaa 100644 --- a/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1beta1/kafkaclusters.rs +++ b/kube-custom-resources-rs/src/kafka_banzaicloud_io/v1beta1/kafkaclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/banzaicloud/koperator/kafka.banzaicloud.io/v1beta1/kafkaclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_services_k8s_aws/v1alpha1/clusters.rs b/kube-custom-resources-rs/src/kafka_services_k8s_aws/v1alpha1/clusters.rs index c3174d885..e7e97c689 100644 --- a/kube-custom-resources-rs/src/kafka_services_k8s_aws/v1alpha1/clusters.rs +++ b/kube-custom-resources-rs/src/kafka_services_k8s_aws/v1alpha1/clusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/kafka-controller/kafka.services.k8s.aws/v1alpha1/clusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1alpha1/kafkatopics.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1alpha1/kafkatopics.rs index 790b8dc20..8e002e4ed 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1alpha1/kafkatopics.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1alpha1/kafkatopics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1alpha1/kafkatopics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1alpha1/kafkausers.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1alpha1/kafkausers.rs index 650abc4aa..10c839602 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1alpha1/kafkausers.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1alpha1/kafkausers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1alpha1/kafkausers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta1/kafkatopics.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta1/kafkatopics.rs index a0077e2d7..e2e163ce3 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta1/kafkatopics.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta1/kafkatopics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta1/kafkatopics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta1/kafkausers.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta1/kafkausers.rs index 4e69eebdd..d931e756e 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta1/kafkausers.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta1/kafkausers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta1/kafkausers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkabridges.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkabridges.rs index 0f12e35b4..8d3d8a937 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkabridges.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkabridges.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta2/kafkabridges.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkaconnectors.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkaconnectors.rs index cf9e12c71..19f4decdc 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkaconnectors.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkaconnectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta2/kafkaconnectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkaconnects.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkaconnects.rs index ee2eb1843..5d8a389d1 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkaconnects.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkaconnects.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta2/kafkaconnects.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkamirrormakers.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkamirrormakers.rs index 5cf4d3ec3..4ae5c837f 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkamirrormakers.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkamirrormakers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta2/kafkamirrormakers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkanodepools.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkanodepools.rs index a38398470..c51eb2388 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkanodepools.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkanodepools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta2/kafkanodepools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkarebalances.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkarebalances.rs index 1910a2e48..90db0b627 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkarebalances.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkarebalances.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta2/kafkarebalances.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkas.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkas.rs index 69617b61f..f0427e0b6 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkas.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta2/kafkas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkatopics.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkatopics.rs index 3a300e1b7..c3615940b 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkatopics.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkatopics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta2/kafkatopics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkausers.rs b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkausers.rs index 0dad0af88..c4ff7c828 100644 --- a/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkausers.rs +++ b/kube-custom-resources-rs/src/kafka_strimzi_io/v1beta2/kafkausers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/strimzi/strimzi-kafka-operator/kafka.strimzi.io/v1beta2/kafkausers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kamaji_clastix_io/v1alpha1/datastores.rs b/kube-custom-resources-rs/src/kamaji_clastix_io/v1alpha1/datastores.rs index f6f64646d..2ac4656c8 100644 --- a/kube-custom-resources-rs/src/kamaji_clastix_io/v1alpha1/datastores.rs +++ b/kube-custom-resources-rs/src/kamaji_clastix_io/v1alpha1/datastores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clastix/kamaji/kamaji.clastix.io/v1alpha1/datastores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kamaji_clastix_io/v1alpha1/tenantcontrolplanes.rs b/kube-custom-resources-rs/src/kamaji_clastix_io/v1alpha1/tenantcontrolplanes.rs index d27f19dec..04915d010 100644 --- a/kube-custom-resources-rs/src/kamaji_clastix_io/v1alpha1/tenantcontrolplanes.rs +++ b/kube-custom-resources-rs/src/kamaji_clastix_io/v1alpha1/tenantcontrolplanes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clastix/kamaji/kamaji.clastix.io/v1alpha1/tenantcontrolplanes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/karpenter_k8s_aws/v1/ec2nodeclasses.rs b/kube-custom-resources-rs/src/karpenter_k8s_aws/v1/ec2nodeclasses.rs index de70af8bc..98c9ff29c 100644 --- a/kube-custom-resources-rs/src/karpenter_k8s_aws/v1/ec2nodeclasses.rs +++ b/kube-custom-resources-rs/src/karpenter_k8s_aws/v1/ec2nodeclasses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/karpenter-provider-aws/karpenter.k8s.aws/v1/ec2nodeclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/karpenter_k8s_aws/v1beta1/ec2nodeclasses.rs b/kube-custom-resources-rs/src/karpenter_k8s_aws/v1beta1/ec2nodeclasses.rs index b497f5b28..4ca017c9e 100644 --- a/kube-custom-resources-rs/src/karpenter_k8s_aws/v1beta1/ec2nodeclasses.rs +++ b/kube-custom-resources-rs/src/karpenter_k8s_aws/v1beta1/ec2nodeclasses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/karpenter-provider-aws/karpenter.k8s.aws/v1beta1/ec2nodeclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/karpenter_sh/v1/nodeclaims.rs b/kube-custom-resources-rs/src/karpenter_sh/v1/nodeclaims.rs index 04f2510e7..b20a514a4 100644 --- a/kube-custom-resources-rs/src/karpenter_sh/v1/nodeclaims.rs +++ b/kube-custom-resources-rs/src/karpenter_sh/v1/nodeclaims.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1/nodeclaims.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/karpenter_sh/v1/nodepools.rs b/kube-custom-resources-rs/src/karpenter_sh/v1/nodepools.rs index 7a4b2e1cc..ff19f6db4 100644 --- a/kube-custom-resources-rs/src/karpenter_sh/v1/nodepools.rs +++ b/kube-custom-resources-rs/src/karpenter_sh/v1/nodepools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1/nodepools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/karpenter_sh/v1beta1/nodeclaims.rs b/kube-custom-resources-rs/src/karpenter_sh/v1beta1/nodeclaims.rs index 9769acc8a..a1c26774a 100644 --- a/kube-custom-resources-rs/src/karpenter_sh/v1beta1/nodeclaims.rs +++ b/kube-custom-resources-rs/src/karpenter_sh/v1beta1/nodeclaims.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1beta1/nodeclaims.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/karpenter_sh/v1beta1/nodepools.rs b/kube-custom-resources-rs/src/karpenter_sh/v1beta1/nodepools.rs index 151d8442c..0070954fb 100644 --- a/kube-custom-resources-rs/src/karpenter_sh/v1beta1/nodepools.rs +++ b/kube-custom-resources-rs/src/karpenter_sh/v1beta1/nodepools.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/karpenter-provider-aws/karpenter.sh/v1beta1/nodepools.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keda_sh/v1alpha1/clustertriggerauthentications.rs b/kube-custom-resources-rs/src/keda_sh/v1alpha1/clustertriggerauthentications.rs index 3112222e4..60b90732c 100644 --- a/kube-custom-resources-rs/src/keda_sh/v1alpha1/clustertriggerauthentications.rs +++ b/kube-custom-resources-rs/src/keda_sh/v1alpha1/clustertriggerauthentications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kedacore/keda/keda.sh/v1alpha1/clustertriggerauthentications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keda_sh/v1alpha1/scaledjobs.rs b/kube-custom-resources-rs/src/keda_sh/v1alpha1/scaledjobs.rs index a7c240bf2..c91b27c34 100644 --- a/kube-custom-resources-rs/src/keda_sh/v1alpha1/scaledjobs.rs +++ b/kube-custom-resources-rs/src/keda_sh/v1alpha1/scaledjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kedacore/keda/keda.sh/v1alpha1/scaledjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keda_sh/v1alpha1/scaledobjects.rs b/kube-custom-resources-rs/src/keda_sh/v1alpha1/scaledobjects.rs index aa41ba225..013728f22 100644 --- a/kube-custom-resources-rs/src/keda_sh/v1alpha1/scaledobjects.rs +++ b/kube-custom-resources-rs/src/keda_sh/v1alpha1/scaledobjects.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kedacore/keda/keda.sh/v1alpha1/scaledobjects.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keda_sh/v1alpha1/triggerauthentications.rs b/kube-custom-resources-rs/src/keda_sh/v1alpha1/triggerauthentications.rs index 553ffc979..08a542a81 100644 --- a/kube-custom-resources-rs/src/keda_sh/v1alpha1/triggerauthentications.rs +++ b/kube-custom-resources-rs/src/keda_sh/v1alpha1/triggerauthentications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kedacore/keda/keda.sh/v1alpha1/triggerauthentications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keycloak_k8s_reddec_net/v1alpha1/keycloakclients.rs b/kube-custom-resources-rs/src/keycloak_k8s_reddec_net/v1alpha1/keycloakclients.rs index f9b60f2ca..90fb53c25 100644 --- a/kube-custom-resources-rs/src/keycloak_k8s_reddec_net/v1alpha1/keycloakclients.rs +++ b/kube-custom-resources-rs/src/keycloak_k8s_reddec_net/v1alpha1/keycloakclients.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/reddec/keycloak-ext-operator/keycloak.k8s.reddec.net/v1alpha1/keycloakclients.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakbackups.rs b/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakbackups.rs index cf13c2f05..3b1d29bfb 100644 --- a/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakbackups.rs +++ b/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/keycloak/keycloak-operator/keycloak.org/v1alpha1/keycloakbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakclients.rs b/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakclients.rs index 26e4323b1..2bdad773e 100644 --- a/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakclients.rs +++ b/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakclients.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/keycloak/keycloak-operator/keycloak.org/v1alpha1/keycloakclients.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakrealms.rs b/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakrealms.rs index b4219b1f1..c2f803d73 100644 --- a/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakrealms.rs +++ b/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakrealms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/keycloak/keycloak-operator/keycloak.org/v1alpha1/keycloakrealms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloaks.rs b/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloaks.rs index 3324a1baf..25bafdfd8 100644 --- a/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloaks.rs +++ b/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloaks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/keycloak/keycloak-operator/keycloak.org/v1alpha1/keycloaks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakusers.rs b/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakusers.rs index 9fb794987..79da0959a 100644 --- a/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakusers.rs +++ b/kube-custom-resources-rs/src/keycloak_org/v1alpha1/keycloakusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/keycloak/keycloak-operator/keycloak.org/v1alpha1/keycloakusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keyspaces_services_k8s_aws/v1alpha1/keyspaces.rs b/kube-custom-resources-rs/src/keyspaces_services_k8s_aws/v1alpha1/keyspaces.rs index 0ed1a661e..6db23af00 100644 --- a/kube-custom-resources-rs/src/keyspaces_services_k8s_aws/v1alpha1/keyspaces.rs +++ b/kube-custom-resources-rs/src/keyspaces_services_k8s_aws/v1alpha1/keyspaces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/keyspaces-controller/keyspaces.services.k8s.aws/v1alpha1/keyspaces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/keyspaces_services_k8s_aws/v1alpha1/tables.rs b/kube-custom-resources-rs/src/keyspaces_services_k8s_aws/v1alpha1/tables.rs index c79ee65b0..e3bdbc51c 100644 --- a/kube-custom-resources-rs/src/keyspaces_services_k8s_aws/v1alpha1/tables.rs +++ b/kube-custom-resources-rs/src/keyspaces_services_k8s_aws/v1alpha1/tables.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/keyspaces-controller/keyspaces.services.k8s.aws/v1alpha1/tables.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kibana_k8s_elastic_co/v1/kibanas.rs b/kube-custom-resources-rs/src/kibana_k8s_elastic_co/v1/kibanas.rs index da777bcb8..276d56e3f 100644 --- a/kube-custom-resources-rs/src/kibana_k8s_elastic_co/v1/kibanas.rs +++ b/kube-custom-resources-rs/src/kibana_k8s_elastic_co/v1/kibanas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/kibana.k8s.elastic.co/v1/kibanas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kibana_k8s_elastic_co/v1beta1/kibanas.rs b/kube-custom-resources-rs/src/kibana_k8s_elastic_co/v1beta1/kibanas.rs index 8e62e36bd..8ff78fbe8 100644 --- a/kube-custom-resources-rs/src/kibana_k8s_elastic_co/v1beta1/kibanas.rs +++ b/kube-custom-resources-rs/src/kibana_k8s_elastic_co/v1beta1/kibanas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/kibana.k8s.elastic.co/v1beta1/kibanas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kinesis_services_k8s_aws/v1alpha1/streams.rs b/kube-custom-resources-rs/src/kinesis_services_k8s_aws/v1alpha1/streams.rs index b0c206439..4f087b748 100644 --- a/kube-custom-resources-rs/src/kinesis_services_k8s_aws/v1alpha1/streams.rs +++ b/kube-custom-resources-rs/src/kinesis_services_k8s_aws/v1alpha1/streams.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/kinesis-controller/kinesis.services.k8s.aws/v1alpha1/streams.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/modules.rs b/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/modules.rs index 0e5d067e0..c4aa0931a 100644 --- a/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/modules.rs +++ b/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/modules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/kernel-module-management/kmm.sigs.x-k8s.io/v1beta1/modules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/nodemodulesconfigs.rs b/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/nodemodulesconfigs.rs index a282a9674..8b0801082 100644 --- a/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/nodemodulesconfigs.rs +++ b/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/nodemodulesconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/kernel-module-management/kmm.sigs.x-k8s.io/v1beta1/nodemodulesconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/preflightvalidations.rs b/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/preflightvalidations.rs index c7b1c7013..d8850e571 100644 --- a/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/preflightvalidations.rs +++ b/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta1/preflightvalidations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/kernel-module-management/kmm.sigs.x-k8s.io/v1beta1/preflightvalidations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta2/preflightvalidations.rs b/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta2/preflightvalidations.rs index da97381da..b8e841a6f 100644 --- a/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta2/preflightvalidations.rs +++ b/kube-custom-resources-rs/src/kmm_sigs_x_k8s_io/v1beta2/preflightvalidations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/kernel-module-management/kmm.sigs.x-k8s.io/v1beta2/preflightvalidations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/aliases.rs b/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/aliases.rs index 731b22f62..eb97fc5a7 100644 --- a/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/aliases.rs +++ b/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/aliases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/kms-controller/kms.services.k8s.aws/v1alpha1/aliases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/grants.rs b/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/grants.rs index 88314d9ac..cb2f95ee5 100644 --- a/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/grants.rs +++ b/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/grants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/kms-controller/kms.services.k8s.aws/v1alpha1/grants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/keys.rs b/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/keys.rs index 9ff877a27..54cd88f0d 100644 --- a/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/keys.rs +++ b/kube-custom-resources-rs/src/kms_services_k8s_aws/v1alpha1/keys.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/kms-controller/kms.services.k8s.aws/v1alpha1/keys.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuadrant_io/v1alpha1/dnsrecords.rs b/kube-custom-resources-rs/src/kuadrant_io/v1alpha1/dnsrecords.rs index 26cddbe7a..a9ba57c40 100644 --- a/kube-custom-resources-rs/src/kuadrant_io/v1alpha1/dnsrecords.rs +++ b/kube-custom-resources-rs/src/kuadrant_io/v1alpha1/dnsrecords.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Kuadrant/dns-operator/kuadrant.io/v1alpha1/dnsrecords.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -130,9 +130,6 @@ pub struct DNSRecordStatus { /// QueuedAt is a time when DNS record was received for the reconciliation #[serde(default, skip_serializing_if = "Option::is_none", rename = "queuedAt")] pub queued_at: Option, - /// QueuedFor is a time when we expect a DNS record to be reconciled again - #[serde(default, skip_serializing_if = "Option::is_none", rename = "queuedFor")] - pub queued_for: Option, /// ValidFor indicates duration since the last reconciliation we consider data in the record to be valid #[serde(default, skip_serializing_if = "Option::is_none", rename = "validFor")] pub valid_for: Option, diff --git a/kube-custom-resources-rs/src/kuadrant_io/v1alpha1/managedzones.rs b/kube-custom-resources-rs/src/kuadrant_io/v1alpha1/managedzones.rs index 7711d761e..d16bee12b 100644 --- a/kube-custom-resources-rs/src/kuadrant_io/v1alpha1/managedzones.rs +++ b/kube-custom-resources-rs/src/kuadrant_io/v1alpha1/managedzones.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Kuadrant/dns-operator/kuadrant.io/v1alpha1/managedzones.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuadrant_io/v1beta1/kuadrants.rs b/kube-custom-resources-rs/src/kuadrant_io/v1beta1/kuadrants.rs index 1011e5763..40649988a 100644 --- a/kube-custom-resources-rs/src/kuadrant_io/v1beta1/kuadrants.rs +++ b/kube-custom-resources-rs/src/kuadrant_io/v1beta1/kuadrants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Kuadrant/kuadrant-operator/kuadrant.io/v1beta1/kuadrants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuadrant_io/v1beta2/ratelimitpolicies.rs b/kube-custom-resources-rs/src/kuadrant_io/v1beta2/ratelimitpolicies.rs index 184d5ce81..937b97970 100644 --- a/kube-custom-resources-rs/src/kuadrant_io/v1beta2/ratelimitpolicies.rs +++ b/kube-custom-resources-rs/src/kuadrant_io/v1beta2/ratelimitpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Kuadrant/kuadrant-operator/kuadrant.io/v1beta2/ratelimitpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -112,7 +112,7 @@ pub struct RateLimitPolicyDefaultsLimitsRouteSelectors { /// starts with `/foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// match: /// /// @@ -210,7 +210,7 @@ pub enum RateLimitPolicyDefaultsLimitsRouteSelectorsMatchesHeadersType { /// starts with `/foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// match: /// /// @@ -424,7 +424,7 @@ pub struct RateLimitPolicyLimitsRouteSelectors { /// starts with `/foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// match: /// /// @@ -522,7 +522,7 @@ pub enum RateLimitPolicyLimitsRouteSelectorsMatchesHeadersType { /// starts with `/foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// match: /// /// @@ -745,7 +745,7 @@ pub struct RateLimitPolicyOverridesLimitsRouteSelectors { /// starts with `/foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// match: /// /// @@ -843,7 +843,7 @@ pub enum RateLimitPolicyOverridesLimitsRouteSelectorsMatchesHeadersType { /// starts with `/foo` AND it contains the `version: v1` header: /// /// -/// ``` +/// ```text /// match: /// /// diff --git a/kube-custom-resources-rs/src/kube_green_com/v1alpha1/sleepinfos.rs b/kube-custom-resources-rs/src/kube_green_com/v1alpha1/sleepinfos.rs index a7680288b..0dc6cfc8d 100644 --- a/kube-custom-resources-rs/src/kube_green_com/v1alpha1/sleepinfos.rs +++ b/kube-custom-resources-rs/src/kube_green_com/v1alpha1/sleepinfos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-green/kube-green/kube-green.com/v1alpha1/sleepinfos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kubean_io/v1alpha1/clusteroperations.rs b/kube-custom-resources-rs/src/kubean_io/v1alpha1/clusteroperations.rs index 86128bae9..308a9d139 100644 --- a/kube-custom-resources-rs/src/kubean_io/v1alpha1/clusteroperations.rs +++ b/kube-custom-resources-rs/src/kubean_io/v1alpha1/clusteroperations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubean-io/kubean/kubean.io/v1alpha1/clusteroperations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kubean_io/v1alpha1/clusters.rs b/kube-custom-resources-rs/src/kubean_io/v1alpha1/clusters.rs index 7fcd2ba07..1d6a0ead8 100644 --- a/kube-custom-resources-rs/src/kubean_io/v1alpha1/clusters.rs +++ b/kube-custom-resources-rs/src/kubean_io/v1alpha1/clusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubean-io/kubean/kubean.io/v1alpha1/clusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kubean_io/v1alpha1/localartifactsets.rs b/kube-custom-resources-rs/src/kubean_io/v1alpha1/localartifactsets.rs index bfa803bfb..05b64cdc4 100644 --- a/kube-custom-resources-rs/src/kubean_io/v1alpha1/localartifactsets.rs +++ b/kube-custom-resources-rs/src/kubean_io/v1alpha1/localartifactsets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubean-io/kubean/kubean.io/v1alpha1/localartifactsets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kubean_io/v1alpha1/manifests.rs b/kube-custom-resources-rs/src/kubean_io/v1alpha1/manifests.rs index a4c4b33a9..a117c6d55 100644 --- a/kube-custom-resources-rs/src/kubean_io/v1alpha1/manifests.rs +++ b/kube-custom-resources-rs/src/kubean_io/v1alpha1/manifests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubean-io/kubean/kubean.io/v1alpha1/manifests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kubecost_com/v1alpha1/turndownschedules.rs b/kube-custom-resources-rs/src/kubecost_com/v1alpha1/turndownschedules.rs index 080b767b7..8024f6708 100644 --- a/kube-custom-resources-rs/src/kubecost_com/v1alpha1/turndownschedules.rs +++ b/kube-custom-resources-rs/src/kubecost_com/v1alpha1/turndownschedules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubecost/cluster-turndown/kubecost.com/v1alpha1/turndownschedules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kubevious_io/v1alpha1/workloadprofiles.rs b/kube-custom-resources-rs/src/kubevious_io/v1alpha1/workloadprofiles.rs index 2a79a8209..20d362e1b 100644 --- a/kube-custom-resources-rs/src/kubevious_io/v1alpha1/workloadprofiles.rs +++ b/kube-custom-resources-rs/src/kubevious_io/v1alpha1/workloadprofiles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubevious/workload-operator/kubevious.io/v1alpha1/workloadprofiles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kubevious_io/v1alpha1/workloads.rs b/kube-custom-resources-rs/src/kubevious_io/v1alpha1/workloads.rs index 9c2cc6d6d..d14247ae7 100644 --- a/kube-custom-resources-rs/src/kubevious_io/v1alpha1/workloads.rs +++ b/kube-custom-resources-rs/src/kubevious_io/v1alpha1/workloads.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubevious/workload-operator/kubevious.io/v1alpha1/workloads.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/admissionchecks.rs b/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/admissionchecks.rs index f9fa89442..6617e3ca7 100644 --- a/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/admissionchecks.rs +++ b/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/admissionchecks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/admissionchecks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/clusterqueues.rs b/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/clusterqueues.rs index babfed1ec..706317df9 100644 --- a/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/clusterqueues.rs +++ b/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/clusterqueues.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/clusterqueues.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -31,7 +31,6 @@ pub struct ClusterQueueSpec { /// cohort that this ClusterQueue belongs to. CQs that belong to the /// same cohort can borrow unused resources from each other. /// - /// /// A CQ can be a member of a single borrowing cohort. A workload submitted /// to a queue referencing this CQ can borrow quota from any CQ in the cohort. /// Only quota for the [resource, flavor] pairs listed in the CQ can be @@ -39,11 +38,9 @@ pub struct ClusterQueueSpec { /// If empty, this ClusterQueue cannot borrow from any other ClusterQueue and /// vice versa. /// - /// /// A cohort is a name that links CQs together, but it doesn't reference any /// object. /// - /// /// Validation of a cohort name is equivalent to that of object names: /// subdomain in DNS (RFC 1123). #[serde(default, skip_serializing_if = "Option::is_none")] @@ -66,10 +63,8 @@ pub struct ClusterQueueSpec { /// preemption describes policies to preempt Workloads from this ClusterQueue /// or the ClusterQueue's cohort. /// - /// /// Preemption can happen in two scenarios: /// - /// /// - When a Workload fits within the nominal quota of the ClusterQueue, but /// the quota is currently borrowed by other ClusterQueues in the cohort. /// Preempting Workloads in other ClusterQueues allows this ClusterQueue to @@ -77,7 +72,6 @@ pub struct ClusterQueueSpec { /// - When a Workload doesn't fit within the nominal quota of the ClusterQueue /// and there are admitted Workloads in the ClusterQueue with lower priority. /// - /// /// The preemption algorithm tries to find a minimal set of Workloads to /// preempt to accomomdate the pending Workload, preempting Workloads with /// lower priority first. @@ -87,7 +81,6 @@ pub struct ClusterQueueSpec { /// across the queues in this ClusterQueue. /// Current Supported Strategies: /// - /// /// - StrictFIFO: workloads are ordered strictly by creation time. /// Older workloads that can't be admitted will block admitting newer /// workloads even if they fit available quota. @@ -106,10 +99,8 @@ pub struct ClusterQueueSpec { /// stopPolicy - if set to a value different from None, the ClusterQueue is considered Inactive, no new reservation being /// made. /// - /// /// Depending on its value, its associated workloads will: /// - /// /// - None - Workloads are admitted /// - HoldAndDrain - Admitted workloads are evicted and Reserving workloads will cancel the reservation. /// - Hold - Admitted workloads will run to completion and Reserving workloads will cancel the reservation. @@ -160,7 +151,6 @@ pub struct ClusterQueueFlavorFungibility { /// whenCanBorrow determines whether a workload should try the next flavor /// before borrowing in current flavor. The possible values are: /// - /// /// - `Borrow` (default): allocate in current flavor if borrowing /// is possible. /// - `TryNextFlavor`: try next flavor even if the current @@ -170,7 +160,6 @@ pub struct ClusterQueueFlavorFungibility { /// whenCanPreempt determines whether a workload should try the next flavor /// before borrowing in current flavor. The possible values are: /// - /// /// - `Preempt`: allocate in current flavor if it's possible to preempt some workloads. /// - `TryNextFlavor` (default): try next flavor even if there are enough /// candidates for preemption in the current flavor. @@ -231,10 +220,8 @@ pub struct ClusterQueueNamespaceSelectorMatchExpressions { /// preemption describes policies to preempt Workloads from this ClusterQueue /// or the ClusterQueue's cohort. /// -/// /// Preemption can happen in two scenarios: /// -/// /// - When a Workload fits within the nominal quota of the ClusterQueue, but /// the quota is currently borrowed by other ClusterQueues in the cohort. /// Preempting Workloads in other ClusterQueues allows this ClusterQueue to @@ -242,7 +229,6 @@ pub struct ClusterQueueNamespaceSelectorMatchExpressions { /// - When a Workload doesn't fit within the nominal quota of the ClusterQueue /// and there are admitted Workloads in the ClusterQueue with lower priority. /// -/// /// The preemption algorithm tries to find a minimal set of Workloads to /// preempt to accomomdate the pending Workload, preempting Workloads with /// lower priority first. @@ -256,7 +242,6 @@ pub struct ClusterQueuePreemption { /// Workloads from other ClusterQueues in the cohort that are using more than /// their nominal quota. The possible values are: /// - /// /// - `Never` (default): do not preempt Workloads in the cohort. /// - `LowerPriority`: if the pending Workload fits within the nominal /// quota of its ClusterQueue, only preempt Workloads in the cohort that have @@ -270,7 +255,6 @@ pub struct ClusterQueuePreemption { /// within the nominal quota for its ClusterQueue, can preempt active Workloads in /// the ClusterQueue. The possible values are: /// - /// /// - `Never` (default): do not preempt Workloads in the ClusterQueue. /// - `LowerPriority`: only preempt Workloads in the ClusterQueue that have /// lower priority than the pending Workload. @@ -314,10 +298,8 @@ pub enum ClusterQueuePreemptionBorrowWithinCohortPolicy { /// preemption describes policies to preempt Workloads from this ClusterQueue /// or the ClusterQueue's cohort. /// -/// /// Preemption can happen in two scenarios: /// -/// /// - When a Workload fits within the nominal quota of the ClusterQueue, but /// the quota is currently borrowed by other ClusterQueues in the cohort. /// Preempting Workloads in other ClusterQueues allows this ClusterQueue to @@ -325,7 +307,6 @@ pub enum ClusterQueuePreemptionBorrowWithinCohortPolicy { /// - When a Workload doesn't fit within the nominal quota of the ClusterQueue /// and there are admitted Workloads in the ClusterQueue with lower priority. /// -/// /// The preemption algorithm tries to find a minimal set of Workloads to /// preempt to accomomdate the pending Workload, preempting Workloads with /// lower priority first. @@ -339,10 +320,8 @@ pub enum ClusterQueuePreemptionReclaimWithinCohort { /// preemption describes policies to preempt Workloads from this ClusterQueue /// or the ClusterQueue's cohort. /// -/// /// Preemption can happen in two scenarios: /// -/// /// - When a Workload fits within the nominal quota of the ClusterQueue, but /// the quota is currently borrowed by other ClusterQueues in the cohort. /// Preempting Workloads in other ClusterQueues allows this ClusterQueue to @@ -350,7 +329,6 @@ pub enum ClusterQueuePreemptionReclaimWithinCohort { /// - When a Workload doesn't fit within the nominal quota of the ClusterQueue /// and there are admitted Workloads in the ClusterQueue with lower priority. /// -/// /// The preemption algorithm tries to find a minimal set of Workloads to /// preempt to accomomdate the pending Workload, preempting Workloads with /// lower priority first. @@ -434,7 +412,6 @@ pub struct ClusterQueueResourceGroupsFlavorsResources { /// should account for resources that can be provided by a component such as /// Kubernetes cluster-autoscaler. /// - /// /// If the ClusterQueue belongs to a cohort, the sum of the quotas for each /// (flavor, resource) combination defines the maximum quantity that can be /// allocated by a ClusterQueue in the cohort. diff --git a/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/localqueues.rs b/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/localqueues.rs index 492d43ad2..3230747d8 100644 --- a/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/localqueues.rs +++ b/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/localqueues.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/localqueues.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -26,10 +26,8 @@ pub struct LocalQueueSpec { /// stopPolicy - if set to a value different from None, the LocalQueue is considered Inactive, /// no new reservation being made. /// - /// /// Depending on its value, its associated workloads will: /// - /// /// - None - Workloads are admitted /// - HoldAndDrain - Admitted workloads are evicted and Reserving workloads will cancel the reservation. /// - Hold - Admitted workloads will run to completion and Reserving workloads will cancel the reservation. diff --git a/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/resourceflavors.rs b/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/resourceflavors.rs index 414737422..35c4ddad5 100644 --- a/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/resourceflavors.rs +++ b/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/resourceflavors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/resourceflavors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -26,7 +26,6 @@ pub struct ResourceFlavorSpec { /// nodeLabels should be injected into the pods of the Workload by the /// controller that integrates with the Workload object. /// - /// /// nodeLabels can be up to 8 elements. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeLabels")] pub node_labels: Option>, @@ -35,22 +34,18 @@ pub struct ResourceFlavorSpec { /// Workloads' podsets must have tolerations for these nodeTaints in order to /// get assigned this ResourceFlavor during admission. /// - /// /// An example of a nodeTaint is /// cloud.provider.com/preemptible="true":NoSchedule /// - /// /// nodeTaints can be up to 8 elements. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaints")] pub node_taints: Option>, /// tolerations are extra tolerations that will be added to the pods admitted in /// the quota associated with this resource flavor. /// - /// /// An example of a toleration is /// cloud.provider.com/preemptible="true":NoSchedule /// - /// /// tolerations can be up to 8 elements. #[serde(default, skip_serializing_if = "Option::is_none")] pub tolerations: Option>, diff --git a/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/workloads.rs b/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/workloads.rs index 75d062b90..90a2b1e49 100644 --- a/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/workloads.rs +++ b/kube-custom-resources-rs/src/kueue_x_k8s_io/v1beta1/workloads.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/kueue/kueue.x-k8s.io/v1beta1/workloads.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -25,11 +25,9 @@ pub struct WorkloadSpec { /// Changing active from true to false will evict any running workloads. /// Possible values are: /// - /// /// - false: indicates that a workload should never be admitted and evicts running workloads /// - true: indicates that a workload can be evaluated for admission into it's respective queue. /// - /// /// Defaults to true #[serde(default, skip_serializing_if = "Option::is_none")] pub active: Option, @@ -72,14 +70,11 @@ pub struct WorkloadPodSets { /// minCount is the minimum number of pods for the spec acceptable /// if the workload supports partial admission. /// - /// /// If not provided, partial admission for the current PodSet is not /// enabled. /// - /// /// Only one podSet within the workload can use this. /// - /// /// This is an alpha field and requires enabling PartialAdmission feature gate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "minCount")] pub min_count: Option, @@ -88,15 +83,12 @@ pub struct WorkloadPodSets { pub name: Option, /// template is the Pod template. /// - /// /// The only allowed fields in template.metadata are labels and annotations. /// - /// /// If requests are omitted for a container or initContainer, /// they default to the limits if they are explicitly specified for the /// container or initContainer. /// - /// /// During admission, the rules in nodeSelector and /// nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution that match /// the keys in the nodeLabels from the ResourceFlavors considered for this @@ -107,15 +99,12 @@ pub struct WorkloadPodSets { /// template is the Pod template. /// -/// /// The only allowed fields in template.metadata are labels and annotations. /// -/// /// If requests are omitted for a container or initContainer, /// they default to the limits if they are explicitly specified for the /// container or initContainer. /// -/// /// During admission, the rules in nodeSelector and /// nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution that match /// the keys in the nodeLabels from the ResourceFlavors considered for this @@ -245,9 +234,11 @@ pub struct WorkloadPodSetsTemplateSpec { /// More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] pub init_containers: Option>, - /// NodeName is a request to schedule this pod onto a specific node. If it is non-empty, - /// the scheduler simply schedules this pod onto that node, assuming that it fits resource - /// requirements. + /// NodeName indicates in which node this pod is scheduled. + /// If empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName. + /// Once this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod. + /// This field should not be used to express a desire for the pod to be scheduled on a specific node. + /// https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodename #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeName")] pub node_name: Option, /// NodeSelector is a selector which must be true for the pod to fit on a node. @@ -258,11 +249,9 @@ pub struct WorkloadPodSetsTemplateSpec { /// Specifies the OS of the containers in the pod. /// Some pod and container fields are restricted if this is set. /// - /// /// If the OS field is set to linux, the following fields must be unset: /// -securityContext.windowsOptions /// - /// /// If the OS field is set to windows, following fields must be unset: /// - spec.hostPID /// - spec.hostIPC @@ -277,6 +266,7 @@ pub struct WorkloadPodSetsTemplateSpec { /// - spec.securityContext.runAsUser /// - spec.securityContext.runAsGroup /// - spec.securityContext.supplementalGroups + /// - spec.securityContext.supplementalGroupsPolicy /// - spec.containers[*].securityContext.appArmorProfile /// - spec.containers[*].securityContext.seLinuxOptions /// - spec.containers[*].securityContext.seccompProfile @@ -329,11 +319,9 @@ pub struct WorkloadPodSetsTemplateSpec { /// will be made available to those containers which consume them /// by name. /// - /// /// This is an alpha field and requires enabling the /// DynamicResourceAllocation feature gate. /// - /// /// This field is immutable. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaims")] pub resource_claims: Option>, @@ -358,7 +346,6 @@ pub struct WorkloadPodSetsTemplateSpec { /// If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the /// scheduler will not attempt to schedule the pod. /// - /// /// SchedulingGates can only be set at pod creation time, and be removed only afterwards. #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulingGates")] pub scheduling_gates: Option>, @@ -622,7 +609,7 @@ pub struct WorkloadPodSetsTemplateSpecAffinityPodAffinityPreferredDuringScheduli /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -633,7 +620,7 @@ pub struct WorkloadPodSetsTemplateSpecAffinityPodAffinityPreferredDuringScheduli /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -743,7 +730,7 @@ pub struct WorkloadPodSetsTemplateSpecAffinityPodAffinityRequiredDuringSchedulin /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -754,7 +741,7 @@ pub struct WorkloadPodSetsTemplateSpecAffinityPodAffinityRequiredDuringSchedulin /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -895,7 +882,7 @@ pub struct WorkloadPodSetsTemplateSpecAffinityPodAntiAffinityPreferredDuringSche /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -906,7 +893,7 @@ pub struct WorkloadPodSetsTemplateSpecAffinityPodAntiAffinityPreferredDuringSche /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -1016,7 +1003,7 @@ pub struct WorkloadPodSetsTemplateSpecAffinityPodAntiAffinityRequiredDuringSched /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both matchLabelKeys and labelSelector. /// Also, matchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, /// MismatchLabelKeys is a set of pod label keys to select which pods will @@ -1027,7 +1014,7 @@ pub struct WorkloadPodSetsTemplateSpecAffinityPodAntiAffinityRequiredDuringSched /// pod labels will be ignored. The default value is empty. /// The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. /// Also, mismatchLabelKeys cannot be set when labelSelector isn't set. - /// This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. + /// This is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "mismatchLabelKeys")] pub mismatch_label_keys: Option>, /// A label query over the set of namespaces that the term applies to. @@ -1333,9 +1320,7 @@ pub struct WorkloadPodSetsTemplateSpecContainersEnvValueFromConfigMapKeyRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -1378,9 +1363,7 @@ pub struct WorkloadPodSetsTemplateSpecContainersEnvValueFromSecretKeyRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -1409,9 +1392,7 @@ pub struct WorkloadPodSetsTemplateSpecContainersEnvFromConfigMapRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -1426,9 +1407,7 @@ pub struct WorkloadPodSetsTemplateSpecContainersEnvFromSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -1713,7 +1692,6 @@ pub struct WorkloadPodSetsTemplateSpecContainersLivenessProbeGrpc { /// Service is the name of the service to place in the gRPC HealthCheckRequest /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). /// - /// /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, @@ -1864,7 +1842,6 @@ pub struct WorkloadPodSetsTemplateSpecContainersReadinessProbeGrpc { /// Service is the name of the service to place in the gRPC HealthCheckRequest /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). /// - /// /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, @@ -1936,11 +1913,9 @@ pub struct WorkloadPodSetsTemplateSpecContainersResources { /// Claims lists the names of resources, defined in spec.resourceClaims, /// that are used by this container. /// - /// /// This is an alpha field and requires enabling the /// DynamicResourceAllocation feature gate. /// - /// /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, @@ -1963,6 +1938,11 @@ pub struct WorkloadPodSetsTemplateSpecContainersResourcesClaims { /// the Pod where this field is used. It makes that resource available /// inside a container. pub name: String, + /// Request is the name chosen for a request in the referenced claim. + /// If empty, everything from the claim is made available, otherwise + /// only the result of this request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub request: Option, } /// SecurityContext defines the security options the container should be run with. @@ -1996,7 +1976,7 @@ pub struct WorkloadPodSetsTemplateSpecContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, /// procMount denotes the type of proc mount to use for the containers. - /// The default is DefaultProcMount which uses the container runtime defaults for + /// The default value is Default which uses the container runtime defaults for /// readonly paths and masked paths. /// This requires the ProcMountType feature flag to be enabled. /// Note that this field cannot be set when spec.os.name is windows. @@ -2119,7 +2099,6 @@ pub struct WorkloadPodSetsTemplateSpecContainersSecurityContextSeccompProfile { /// type indicates which kind of seccomp profile will be applied. /// Valid options are: /// - /// /// Localhost - a profile defined in a file on the node should be used. /// RuntimeDefault - the container runtime default profile should be used. /// Unconfined - no profile should be applied. @@ -2231,7 +2210,6 @@ pub struct WorkloadPodSetsTemplateSpecContainersStartupProbeGrpc { /// Service is the name of the service to place in the gRPC HealthCheckRequest /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). /// - /// /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, @@ -2316,10 +2294,8 @@ pub struct WorkloadPodSetsTemplateSpecContainersVolumeMounts { /// RecursiveReadOnly specifies whether read-only mounts should be handled /// recursively. /// - /// /// If ReadOnly is false, this field has no meaning and must be unspecified. /// - /// /// If ReadOnly is true, and this field is set to Disabled, the mount is not made /// recursively read-only. If this field is set to IfPossible, the mount is made /// recursively read-only, if it is supported by the container runtime. If this @@ -2327,11 +2303,9 @@ pub struct WorkloadPodSetsTemplateSpecContainersVolumeMounts { /// supported by the container runtime, otherwise the pod will not be started and /// an error will be generated to indicate the reason. /// - /// /// If this field is set to IfPossible or Enabled, MountPropagation must be set to /// None (or be unspecified, which defaults to None). /// - /// /// If this field is not specified, it is treated as an equivalent of Disabled. #[serde(default, skip_serializing_if = "Option::is_none", rename = "recursiveReadOnly")] pub recursive_read_only: Option, @@ -2386,7 +2360,6 @@ pub struct WorkloadPodSetsTemplateSpecDnsConfigOptions { /// removed or restarted. The kubelet may evict a Pod if an ephemeral container causes the /// Pod to exceed its resource allocation. /// -/// /// To add an ephemeral container, use the ephemeralcontainers subresource of an existing /// Pod. Ephemeral containers may not be removed or restarted. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] @@ -2487,7 +2460,6 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainers { /// The ephemeral container will be run in the namespaces (IPC, PID, etc) of this container. /// If not set then the ephemeral container uses the namespaces configured in the Pod spec. /// - /// /// The container runtime must implement support for this feature. If the runtime does not /// support namespace targeting then the result of setting this field is undefined. #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetContainerName")] @@ -2578,9 +2550,7 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersEnvValueFromConfigMapKe /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -2623,9 +2593,7 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersEnvValueFromSecretKeyRe /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -2654,9 +2622,7 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersEnvFromConfigMapRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -2671,9 +2637,7 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersEnvFromSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -2954,7 +2918,6 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersLivenessProbeGrpc { /// Service is the name of the service to place in the gRPC HealthCheckRequest /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). /// - /// /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, @@ -3102,7 +3065,6 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersReadinessProbeGrpc { /// Service is the name of the service to place in the gRPC HealthCheckRequest /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). /// - /// /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, @@ -3173,11 +3135,9 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersResources { /// Claims lists the names of resources, defined in spec.resourceClaims, /// that are used by this container. /// - /// /// This is an alpha field and requires enabling the /// DynamicResourceAllocation feature gate. /// - /// /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, @@ -3200,6 +3160,11 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersResourcesClaims { /// the Pod where this field is used. It makes that resource available /// inside a container. pub name: String, + /// Request is the name chosen for a request in the referenced claim. + /// If empty, everything from the claim is made available, otherwise + /// only the result of this request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub request: Option, } /// Optional: SecurityContext defines the security options the ephemeral container should be run with. @@ -3232,7 +3197,7 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, /// procMount denotes the type of proc mount to use for the containers. - /// The default is DefaultProcMount which uses the container runtime defaults for + /// The default value is Default which uses the container runtime defaults for /// readonly paths and masked paths. /// This requires the ProcMountType feature flag to be enabled. /// Note that this field cannot be set when spec.os.name is windows. @@ -3355,7 +3320,6 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersSecurityContextSeccompP /// type indicates which kind of seccomp profile will be applied. /// Valid options are: /// - /// /// Localhost - a profile defined in a file on the node should be used. /// RuntimeDefault - the container runtime default profile should be used. /// Unconfined - no profile should be applied. @@ -3461,7 +3425,6 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersStartupProbeGrpc { /// Service is the name of the service to place in the gRPC HealthCheckRequest /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). /// - /// /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, @@ -3546,10 +3509,8 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersVolumeMounts { /// RecursiveReadOnly specifies whether read-only mounts should be handled /// recursively. /// - /// /// If ReadOnly is false, this field has no meaning and must be unspecified. /// - /// /// If ReadOnly is true, and this field is set to Disabled, the mount is not made /// recursively read-only. If this field is set to IfPossible, the mount is made /// recursively read-only, if it is supported by the container runtime. If this @@ -3557,11 +3518,9 @@ pub struct WorkloadPodSetsTemplateSpecEphemeralContainersVolumeMounts { /// supported by the container runtime, otherwise the pod will not be started and /// an error will be generated to indicate the reason. /// - /// /// If this field is set to IfPossible or Enabled, MountPropagation must be set to /// None (or be unspecified, which defaults to None). /// - /// /// If this field is not specified, it is treated as an equivalent of Disabled. #[serde(default, skip_serializing_if = "Option::is_none", rename = "recursiveReadOnly")] pub recursive_read_only: Option, @@ -3596,9 +3555,7 @@ pub struct WorkloadPodSetsTemplateSpecImagePullSecrets { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -3819,9 +3776,7 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersEnvValueFromConfigMapKeyRef /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap or its key must be defined @@ -3864,9 +3819,7 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersEnvValueFromSecretKeyRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret or its key must be defined @@ -3895,9 +3848,7 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersEnvFromConfigMapRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the ConfigMap must be defined @@ -3912,9 +3863,7 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersEnvFromSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// Specify whether the Secret must be defined @@ -4199,7 +4148,6 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersLivenessProbeGrpc { /// Service is the name of the service to place in the gRPC HealthCheckRequest /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). /// - /// /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, @@ -4350,7 +4298,6 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersReadinessProbeGrpc { /// Service is the name of the service to place in the gRPC HealthCheckRequest /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). /// - /// /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, @@ -4422,11 +4369,9 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersResources { /// Claims lists the names of resources, defined in spec.resourceClaims, /// that are used by this container. /// - /// /// This is an alpha field and requires enabling the /// DynamicResourceAllocation feature gate. /// - /// /// This field is immutable. It can only be set for containers. #[serde(default, skip_serializing_if = "Option::is_none")] pub claims: Option>, @@ -4449,6 +4394,11 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersResourcesClaims { /// the Pod where this field is used. It makes that resource available /// inside a container. pub name: String, + /// Request is the name chosen for a request in the referenced claim. + /// If empty, everything from the claim is made available, otherwise + /// only the result of this request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub request: Option, } /// SecurityContext defines the security options the container should be run with. @@ -4482,7 +4432,7 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersSecurityContext { #[serde(default, skip_serializing_if = "Option::is_none")] pub privileged: Option, /// procMount denotes the type of proc mount to use for the containers. - /// The default is DefaultProcMount which uses the container runtime defaults for + /// The default value is Default which uses the container runtime defaults for /// readonly paths and masked paths. /// This requires the ProcMountType feature flag to be enabled. /// Note that this field cannot be set when spec.os.name is windows. @@ -4605,7 +4555,6 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersSecurityContextSeccompProfil /// type indicates which kind of seccomp profile will be applied. /// Valid options are: /// - /// /// Localhost - a profile defined in a file on the node should be used. /// RuntimeDefault - the container runtime default profile should be used. /// Unconfined - no profile should be applied. @@ -4717,7 +4666,6 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersStartupProbeGrpc { /// Service is the name of the service to place in the gRPC HealthCheckRequest /// (see https://github.com/grpc/grpc/blob/master/doc/health-checking.md). /// - /// /// If this is not specified, the default behavior is defined by gRPC. #[serde(default, skip_serializing_if = "Option::is_none")] pub service: Option, @@ -4802,10 +4750,8 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersVolumeMounts { /// RecursiveReadOnly specifies whether read-only mounts should be handled /// recursively. /// - /// /// If ReadOnly is false, this field has no meaning and must be unspecified. /// - /// /// If ReadOnly is true, and this field is set to Disabled, the mount is not made /// recursively read-only. If this field is set to IfPossible, the mount is made /// recursively read-only, if it is supported by the container runtime. If this @@ -4813,11 +4759,9 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersVolumeMounts { /// supported by the container runtime, otherwise the pod will not be started and /// an error will be generated to indicate the reason. /// - /// /// If this field is set to IfPossible or Enabled, MountPropagation must be set to /// None (or be unspecified, which defaults to None). /// - /// /// If this field is not specified, it is treated as an equivalent of Disabled. #[serde(default, skip_serializing_if = "Option::is_none", rename = "recursiveReadOnly")] pub recursive_read_only: Option, @@ -4836,11 +4780,9 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersVolumeMounts { /// Specifies the OS of the containers in the pod. /// Some pod and container fields are restricted if this is set. /// -/// /// If the OS field is set to linux, the following fields must be unset: /// -securityContext.windowsOptions /// -/// /// If the OS field is set to windows, following fields must be unset: /// - spec.hostPID /// - spec.hostIPC @@ -4855,6 +4797,7 @@ pub struct WorkloadPodSetsTemplateSpecInitContainersVolumeMounts { /// - spec.securityContext.runAsUser /// - spec.securityContext.runAsGroup /// - spec.securityContext.supplementalGroups +/// - spec.securityContext.supplementalGroupsPolicy /// - spec.containers[*].securityContext.appArmorProfile /// - spec.containers[*].securityContext.seLinuxOptions /// - spec.containers[*].securityContext.seccompProfile @@ -4882,7 +4825,10 @@ pub struct WorkloadPodSetsTemplateSpecReadinessGates { pub condition_type: String, } -/// PodResourceClaim references exactly one ResourceClaim through a ClaimSource. +/// PodResourceClaim references exactly one ResourceClaim, either directly +/// or by naming a ResourceClaimTemplate which is then turned into a ResourceClaim +/// for the pod. +/// /// It adds a name to it that uniquely identifies the ResourceClaim inside the Pod. /// Containers that need access to the ResourceClaim reference it with this name. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] @@ -4890,32 +4836,28 @@ pub struct WorkloadPodSetsTemplateSpecResourceClaims { /// Name uniquely identifies this resource claim inside the pod. /// This must be a DNS_LABEL. pub name: String, - /// Source describes where to find the ResourceClaim. - #[serde(default, skip_serializing_if = "Option::is_none")] - pub source: Option, -} - -/// Source describes where to find the ResourceClaim. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct WorkloadPodSetsTemplateSpecResourceClaimsSource { /// ResourceClaimName is the name of a ResourceClaim object in the same /// namespace as this pod. + /// + /// Exactly one of ResourceClaimName and ResourceClaimTemplateName must + /// be set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimName")] pub resource_claim_name: Option, /// ResourceClaimTemplateName is the name of a ResourceClaimTemplate /// object in the same namespace as this pod. /// - /// /// The template will be used to create a new ResourceClaim, which will /// be bound to this pod. When this pod is deleted, the ResourceClaim /// will also be deleted. The pod name and resource name, along with a /// generated component, will be used to form a unique name for the /// ResourceClaim, which will be recorded in pod.status.resourceClaimStatuses. /// - /// /// This field is immutable and no changes will be made to the /// corresponding ResourceClaim by the control plane after creating the /// ResourceClaim. + /// + /// Exactly one of ResourceClaimName and ResourceClaimTemplateName must + /// be set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceClaimTemplateName")] pub resource_claim_template_name: Option, } @@ -4940,12 +4882,10 @@ pub struct WorkloadPodSetsTemplateSpecSecurityContext { /// Some volume types allow the Kubelet to change the ownership of that volume /// to be owned by the pod: /// - /// /// 1. The owning GID will be the FSGroup /// 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) /// 3. The permission bits are OR'd with rw-rw---- /// - /// /// If unset, the Kubelet will not modify the ownership and permissions of any volume. /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")] @@ -4995,15 +4935,24 @@ pub struct WorkloadPodSetsTemplateSpecSecurityContext { /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")] pub seccomp_profile: Option, - /// A list of groups applied to the first process run in each container, in addition - /// to the container's primary GID, the fsGroup (if specified), and group memberships - /// defined in the container image for the uid of the container process. If unspecified, - /// no additional groups are added to any container. Note that group memberships - /// defined in the container image for the uid of the container process are still effective, - /// even if they are not included in this list. + /// A list of groups applied to the first process run in each container, in + /// addition to the container's primary GID and fsGroup (if specified). If + /// the SupplementalGroupsPolicy feature is enabled, the + /// supplementalGroupsPolicy field determines whether these are in addition + /// to or instead of any group memberships defined in the container image. + /// If unspecified, no additional groups are added, though group memberships + /// defined in the container image may still be used, depending on the + /// supplementalGroupsPolicy field. /// Note that this field cannot be set when spec.os.name is windows. #[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")] pub supplemental_groups: Option>, + /// Defines how supplemental groups of the first container processes are calculated. + /// Valid values are "Merge" and "Strict". If not specified, "Merge" is used. + /// (Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled + /// and the container runtime must implement support for this feature. + /// Note that this field cannot be set when spec.os.name is windows. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroupsPolicy")] + pub supplemental_groups_policy: Option, /// Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported /// sysctls (by the container runtime) might fail to launch. /// Note that this field cannot be set when spec.os.name is windows. @@ -5071,7 +5020,6 @@ pub struct WorkloadPodSetsTemplateSpecSecurityContextSeccompProfile { /// type indicates which kind of seccomp profile will be applied. /// Valid options are: /// - /// /// Localhost - a profile defined in a file on the node should be used. /// RuntimeDefault - the container runtime default profile should be used. /// Unconfined - no profile should be applied. @@ -5163,7 +5111,6 @@ pub struct WorkloadPodSetsTemplateSpecTopologySpreadConstraints { /// Keys that don't exist in the incoming pod labels will /// be ignored. A null or empty list means only match against labelSelector. /// - /// /// This is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabelKeys")] pub match_label_keys: Option>, @@ -5197,7 +5144,6 @@ pub struct WorkloadPodSetsTemplateSpecTopologySpreadConstraints { /// Valid values are integers greater than 0. /// When value is not nil, WhenUnsatisfiable must be DoNotSchedule. /// - /// /// For example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same /// labelSelector spread as 2/2/2: /// | zone1 | zone2 | zone3 | @@ -5213,7 +5159,6 @@ pub struct WorkloadPodSetsTemplateSpecTopologySpreadConstraints { /// - Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations. /// - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations. /// - /// /// If this value is nil, the behavior is equivalent to the Honor policy. /// This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeAffinityPolicy")] @@ -5224,7 +5169,6 @@ pub struct WorkloadPodSetsTemplateSpecTopologySpreadConstraints { /// has a toleration, are included. /// - Ignore: node taints are ignored. All nodes are included. /// - /// /// If this value is nil, the behavior is equivalent to the Ignore policy. /// This is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeTaintsPolicy")] @@ -5333,7 +5277,6 @@ pub struct WorkloadPodSetsTemplateSpecVolumes { /// The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts, /// and deleted when the pod is removed. /// - /// /// Use this if: /// a) the volume is only needed while the pod runs, /// b) features of normal volumes like restoring from snapshot or capacity @@ -5344,17 +5287,14 @@ pub struct WorkloadPodSetsTemplateSpecVolumes { /// information on the connection between this volume type /// and PersistentVolumeClaim). /// - /// /// Use PersistentVolumeClaim or one of the vendor-specific /// APIs for volumes that persist for longer than the lifecycle /// of an individual pod. /// - /// /// Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to /// be used that way - see the documentation of the driver for /// more information. /// - /// /// A pod can use both types of ephemeral volumes and /// persistent volumes at the same time. #[serde(default, skip_serializing_if = "Option::is_none")] @@ -5389,11 +5329,24 @@ pub struct WorkloadPodSetsTemplateSpecVolumes { /// used for system agents or other privileged things that are allowed /// to see the host machine. Most containers will NOT need this. /// More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath - /// --- - /// TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not - /// mount host directories as read/write. #[serde(default, skip_serializing_if = "Option::is_none", rename = "hostPath")] pub host_path: Option, + /// image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine. + /// The volume is resolved at pod startup depending on which PullPolicy value is provided: + /// + /// - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails. + /// - Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present. + /// - IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails. + /// + /// The volume gets re-resolved if the pod gets deleted and recreated, which means that new remote content will become available on pod recreation. + /// A failure to resolve or pull the image during pod startup will block containers from starting and may add significant latency. Failures will be retried using normal volume backoff and will be reported on the pod reason and message. + /// The types of objects that may be mounted by this volume are defined by the container runtime implementation on a host machine and at minimum must include all valid types supported by the container image field. + /// The OCI object gets mounted in a single directory (spec.containers[*].volumeMounts.mountPath) by merging the manifest layers in the same way as for container images. + /// The volume will be mounted read-only (ro) and non-executable files (noexec). + /// Sub path mounts for containers are not supported (spec.containers[*].volumeMounts.subpath). + /// The field spec.securityContext.fsGroupChangePolicy has no effect on this volume type. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub image: Option, /// iscsi represents an ISCSI Disk resource that is attached to a /// kubelet's host machine and then exposed to the pod. /// More info: https://examples.k8s.io/volumes/iscsi/README.md @@ -5452,7 +5405,6 @@ pub struct WorkloadPodSetsTemplateSpecVolumesAwsElasticBlockStore { /// Tip: Ensure that the filesystem type is supported by the host operating system. /// Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. /// More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore - /// TODO: how do we prevent errors in the filesystem from compromising the machine #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")] pub fs_type: Option, /// partition is the partition in the volume that you want to mount. @@ -5548,9 +5500,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesCephfsSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -5588,9 +5538,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesCinderSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -5620,9 +5568,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesConfigMap { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -5689,9 +5635,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesCsiNodePublishSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -5785,7 +5729,6 @@ pub struct WorkloadPodSetsTemplateSpecVolumesEmptyDir { /// The volume's lifecycle is tied to the pod that defines it - it will be created before the pod starts, /// and deleted when the pod is removed. /// -/// /// Use this if: /// a) the volume is only needed while the pod runs, /// b) features of normal volumes like restoring from snapshot or capacity @@ -5796,17 +5739,14 @@ pub struct WorkloadPodSetsTemplateSpecVolumesEmptyDir { /// information on the connection between this volume type /// and PersistentVolumeClaim). /// -/// /// Use PersistentVolumeClaim or one of the vendor-specific /// APIs for volumes that persist for longer than the lifecycle /// of an individual pod. /// -/// /// Use CSI for light-weight local ephemeral volumes if the CSI driver is meant to /// be used that way - see the documentation of the driver for /// more information. /// -/// /// A pod can use both types of ephemeral volumes and /// persistent volumes at the same time. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] @@ -5819,7 +5759,6 @@ pub struct WorkloadPodSetsTemplateSpecVolumesEphemeral { /// entry. Pod validation will reject the pod if the concatenated name /// is not valid for a PVC (for example, too long). /// - /// /// An existing PVC with that name that is not owned by the pod /// will *not* be used for the pod to avoid using an unrelated /// volume by mistake. Starting the pod is then blocked until @@ -5829,11 +5768,9 @@ pub struct WorkloadPodSetsTemplateSpecVolumesEphemeral { /// this should not be necessary, but it may be useful when /// manually reconstructing a broken cluster. /// - /// /// This field is read-only and no changes will be made by Kubernetes /// to the PVC after it has been created. /// - /// /// Required, must not be nil. #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeClaimTemplate")] pub volume_claim_template: Option, @@ -5847,7 +5784,6 @@ pub struct WorkloadPodSetsTemplateSpecVolumesEphemeral { /// entry. Pod validation will reject the pod if the concatenated name /// is not valid for a PVC (for example, too long). /// -/// /// An existing PVC with that name that is not owned by the pod /// will *not* be used for the pod to avoid using an unrelated /// volume by mistake. Starting the pod is then blocked until @@ -5857,11 +5793,9 @@ pub struct WorkloadPodSetsTemplateSpecVolumesEphemeral { /// this should not be necessary, but it may be useful when /// manually reconstructing a broken cluster. /// -/// /// This field is read-only and no changes will be made by Kubernetes /// to the PVC after it has been created. /// -/// /// Required, must not be nil. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct WorkloadPodSetsTemplateSpecVolumesEphemeralVolumeClaimTemplate { @@ -5964,7 +5898,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesEphemeralVolumeClaimTemplateSpec { /// set to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource /// exists. /// More info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ - /// (Alpha) Using this field requires the VolumeAttributesClass feature gate to be enabled. + /// (Beta) Using this field requires the VolumeAttributesClass feature gate to be enabled (off by default). #[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeAttributesClassName")] pub volume_attributes_class_name: Option, /// volumeMode defines what type of volume is required by the claim. @@ -6093,7 +6027,6 @@ pub struct WorkloadPodSetsTemplateSpecVolumesFc { /// fsType is the filesystem type to mount. /// Must be a filesystem type supported by the host operating system. /// Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. - /// TODO: how do we prevent errors in the filesystem from compromising the machine #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")] pub fs_type: Option, /// lun is Optional: FC target lun number @@ -6150,9 +6083,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesFlexVolumeSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -6178,7 +6109,6 @@ pub struct WorkloadPodSetsTemplateSpecVolumesGcePersistentDisk { /// Tip: Ensure that the filesystem type is supported by the host operating system. /// Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. /// More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk - /// TODO: how do we prevent errors in the filesystem from compromising the machine #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")] pub fs_type: Option, /// partition is the partition in the volume that you want to mount. @@ -6240,9 +6170,6 @@ pub struct WorkloadPodSetsTemplateSpecVolumesGlusterfs { /// used for system agents or other privileged things that are allowed /// to see the host machine. Most containers will NOT need this. /// More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -/// --- -/// TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not -/// mount host directories as read/write. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct WorkloadPodSetsTemplateSpecVolumesHostPath { /// path of the directory on the host. @@ -6256,6 +6183,39 @@ pub struct WorkloadPodSetsTemplateSpecVolumesHostPath { pub r#type: Option, } +/// image represents an OCI object (a container image or artifact) pulled and mounted on the kubelet's host machine. +/// The volume is resolved at pod startup depending on which PullPolicy value is provided: +/// +/// - Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails. +/// - Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present. +/// - IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails. +/// +/// The volume gets re-resolved if the pod gets deleted and recreated, which means that new remote content will become available on pod recreation. +/// A failure to resolve or pull the image during pod startup will block containers from starting and may add significant latency. Failures will be retried using normal volume backoff and will be reported on the pod reason and message. +/// The types of objects that may be mounted by this volume are defined by the container runtime implementation on a host machine and at minimum must include all valid types supported by the container image field. +/// The OCI object gets mounted in a single directory (spec.containers[*].volumeMounts.mountPath) by merging the manifest layers in the same way as for container images. +/// The volume will be mounted read-only (ro) and non-executable files (noexec). +/// Sub path mounts for containers are not supported (spec.containers[*].volumeMounts.subpath). +/// The field spec.securityContext.fsGroupChangePolicy has no effect on this volume type. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct WorkloadPodSetsTemplateSpecVolumesImage { + /// Policy for pulling OCI objects. Possible values are: + /// Always: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails. + /// Never: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present. + /// IfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails. + /// Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "pullPolicy")] + pub pull_policy: Option, + /// Required: Image or artifact reference to be used. + /// Behaves in the same way as pod.spec.containers[*].image. + /// Pull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets. + /// More info: https://kubernetes.io/docs/concepts/containers/images + /// This field is optional to allow higher level config management to default or override + /// container images in workload controllers like Deployments and StatefulSets. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub reference: Option, +} + /// iscsi represents an ISCSI Disk resource that is attached to a /// kubelet's host machine and then exposed to the pod. /// More info: https://examples.k8s.io/volumes/iscsi/README.md @@ -6271,7 +6231,6 @@ pub struct WorkloadPodSetsTemplateSpecVolumesIscsi { /// Tip: Ensure that the filesystem type is supported by the host operating system. /// Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. /// More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi - /// TODO: how do we prevent errors in the filesystem from compromising the machine #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")] pub fs_type: Option, /// initiatorName is the custom iSCSI Initiator Name. @@ -6311,9 +6270,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesIscsiSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -6391,25 +6348,24 @@ pub struct WorkloadPodSetsTemplateSpecVolumesProjected { /// mode, like fsGroup, and the result can be other mode bits set. #[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")] pub default_mode: Option, - /// sources is the list of volume projections + /// sources is the list of volume projections. Each entry in this list + /// handles one source. #[serde(default, skip_serializing_if = "Option::is_none")] pub sources: Option>, } -/// Projection that may be projected along with other supported volume types +/// Projection that may be projected along with other supported volume types. +/// Exactly one of these fields must be set. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct WorkloadPodSetsTemplateSpecVolumesProjectedSources { /// ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field /// of ClusterTrustBundle objects in an auto-updating file. /// - /// /// Alpha, gated by the ClusterTrustBundleProjection feature gate. /// - /// /// ClusterTrustBundle objects can either be selected by name, or by the /// combination of signer name and a label selector. /// - /// /// Kubelet performs aggressive normalization of the PEM contents written /// into the pod filesystem. Esoteric PEM features such as inter-block /// comments and block headers are stripped. Certificates are deduplicated. @@ -6434,14 +6390,11 @@ pub struct WorkloadPodSetsTemplateSpecVolumesProjectedSources { /// ClusterTrustBundle allows a pod to access the `.spec.trustBundle` field /// of ClusterTrustBundle objects in an auto-updating file. /// -/// /// Alpha, gated by the ClusterTrustBundleProjection feature gate. /// -/// /// ClusterTrustBundle objects can either be selected by name, or by the /// combination of signer name and a label selector. /// -/// /// Kubelet performs aggressive normalization of the PEM contents written /// into the pod filesystem. Esoteric PEM features such as inter-block /// comments and block headers are stripped. Certificates are deduplicated. @@ -6524,9 +6477,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesProjectedSourcesConfigMap { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional specify whether the ConfigMap or its keys must be defined @@ -6625,9 +6576,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesProjectedSourcesSecret { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, /// optional field specify whether the Secret or its key must be defined @@ -6712,7 +6661,6 @@ pub struct WorkloadPodSetsTemplateSpecVolumesRbd { /// Tip: Ensure that the filesystem type is supported by the host operating system. /// Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. /// More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd - /// TODO: how do we prevent errors in the filesystem from compromising the machine #[serde(default, skip_serializing_if = "Option::is_none", rename = "fsType")] pub fs_type: Option, /// image is the rados image name. @@ -6759,9 +6707,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesRbdSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -6814,9 +6760,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesScaleIoSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -6910,9 +6854,7 @@ pub struct WorkloadPodSetsTemplateSpecVolumesStorageosSecretRef { /// This field is effectively required, but due to backwards compatibility is /// allowed to be empty. Instances of this type with an empty value here are /// almost certainly wrong. - /// TODO: Add other useful fields. apiVersion, kind, uid? /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - /// TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, } @@ -6961,10 +6903,8 @@ pub struct WorkloadStatus { /// conditions hold the latest available observations of the Workload /// current state. /// - /// /// The type of the condition could be: /// - /// /// - Admitted: the Workload was admitted through a ClusterQueue. /// - Finished: the associated workload finished running (failed or succeeded). /// - PodsReady: at least `.spec.podSets[*].count` Pods are ready or have @@ -7009,7 +6949,6 @@ pub struct WorkloadStatusAdmissionPodSetAssignments { pub name: String, /// resourceUsage keeps track of the total resources all the pods in the podset need to run. /// - /// /// Beside what is provided in podSet's specs, this calculation takes into account /// the LimitRange defaults and RuntimeClass overheads at the moment of admission. /// This field will not change in case of quota reclaim. diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/circuitbreakers.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/circuitbreakers.rs index 471f45f98..ed952b7ee 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/circuitbreakers.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/circuitbreakers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/circuitbreakers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/containerpatches.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/containerpatches.rs index c3d02c854..1e732f90a 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/containerpatches.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/containerpatches.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/containerpatches.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/dataplaneinsights.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/dataplaneinsights.rs index 671552c55..2071e9ae3 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/dataplaneinsights.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/dataplaneinsights.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/dataplaneinsights.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/dataplanes.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/dataplanes.rs index fe9ef5a88..178cfa842 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/dataplanes.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/dataplanes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/dataplanes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/externalservices.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/externalservices.rs index cca6b5c3b..045198571 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/externalservices.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/externalservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/externalservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/faultinjections.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/faultinjections.rs index 3d82f9dfa..bd72b88d5 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/faultinjections.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/faultinjections.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/faultinjections.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/healthchecks.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/healthchecks.rs index 5f42a17e5..de47e1707 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/healthchecks.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/healthchecks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/healthchecks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshaccesslogs.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshaccesslogs.rs index 0772a3596..26e0ba94e 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshaccesslogs.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshaccesslogs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshaccesslogs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshcircuitbreakers.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshcircuitbreakers.rs index f8a1a6948..eade7a793 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshcircuitbreakers.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshcircuitbreakers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshcircuitbreakers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshes.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshes.rs index 71d10e065..b42c758cc 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshes.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshfaultinjections.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshfaultinjections.rs index c1c2e508c..af7c708fc 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshfaultinjections.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshfaultinjections.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshfaultinjections.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayconfigs.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayconfigs.rs index d9936f211..8fb21e0e6 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayconfigs.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshgatewayconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayinstances.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayinstances.rs index 5138212d2..8a07dc49f 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayinstances.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayinstances.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshgatewayinstances.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayroutes.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayroutes.rs index 66a503b19..7e4140452 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayroutes.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgatewayroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshgatewayroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgateways.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgateways.rs index 4f53719c9..f44c94b49 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgateways.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshgateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshgateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshhealthchecks.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshhealthchecks.rs index cf57eef58..0eab967ae 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshhealthchecks.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshhealthchecks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshhealthchecks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshhttproutes.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshhttproutes.rs index 1b2c019d3..e117cc60e 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshhttproutes.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshhttproutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshhttproutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshinsights.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshinsights.rs index a98dbe868..f25f7795f 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshinsights.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshinsights.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshinsights.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshloadbalancingstrategies.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshloadbalancingstrategies.rs index 055aac46e..b54617b36 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshloadbalancingstrategies.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshloadbalancingstrategies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshloadbalancingstrategies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshproxypatches.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshproxypatches.rs index c57ce21bd..05171c18a 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshproxypatches.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshproxypatches.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshproxypatches.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshratelimits.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshratelimits.rs index 285a78dde..eb032ff52 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshratelimits.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshratelimits.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshratelimits.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshretries.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshretries.rs index a6b9425aa..86ce89ce1 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshretries.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshretries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshretries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtcproutes.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtcproutes.rs index dffa5f765..89c83f96d 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtcproutes.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtcproutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshtcproutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtimeouts.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtimeouts.rs index 328384f76..732102cd6 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtimeouts.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtimeouts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshtimeouts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtraces.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtraces.rs index c83612bf1..3a82a58c0 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtraces.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtraces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshtraces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtrafficpermissions.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtrafficpermissions.rs index 47f6438dd..9abca883b 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtrafficpermissions.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/meshtrafficpermissions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/meshtrafficpermissions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/proxytemplates.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/proxytemplates.rs index 571036f66..1dfb95201 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/proxytemplates.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/proxytemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/proxytemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/ratelimits.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/ratelimits.rs index d86bb6ce6..9fba80f96 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/ratelimits.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/ratelimits.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/ratelimits.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/retries.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/retries.rs index bdf23cca6..1ce892044 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/retries.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/retries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/retries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/serviceinsights.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/serviceinsights.rs index f4d4dabba..16e539431 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/serviceinsights.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/serviceinsights.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/serviceinsights.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/timeouts.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/timeouts.rs index 4786eed8e..71f4cced6 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/timeouts.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/timeouts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/timeouts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficlogs.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficlogs.rs index fe15d68a2..f8ad6a18a 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficlogs.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficlogs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/trafficlogs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficpermissions.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficpermissions.rs index 2ae4e0a77..d14fd5e74 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficpermissions.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficpermissions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/trafficpermissions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficroutes.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficroutes.rs index 738b65f90..7c101fd06 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficroutes.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/trafficroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/trafficroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/traffictraces.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/traffictraces.rs index 67c0f02b2..41499accb 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/traffictraces.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/traffictraces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/traffictraces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/virtualoutbounds.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/virtualoutbounds.rs index 709074656..0269c156f 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/virtualoutbounds.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/virtualoutbounds.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/virtualoutbounds.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneegresses.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneegresses.rs index a2d9f2ded..571679e67 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneegresses.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneegresses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/zoneegresses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneegressinsights.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneegressinsights.rs index 1e60207b3..1a9fa1333 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneegressinsights.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneegressinsights.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/zoneegressinsights.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneingresses.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneingresses.rs index 84137651e..c7c9b1594 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneingresses.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneingresses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/zoneingresses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneingressinsights.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneingressinsights.rs index 1d9951456..33fff43fc 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneingressinsights.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneingressinsights.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/zoneingressinsights.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneinsights.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneinsights.rs index 2e472f991..35264e307 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneinsights.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zoneinsights.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/zoneinsights.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zones.rs b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zones.rs index 5acedae3f..953c4248e 100644 --- a/kube-custom-resources-rs/src/kuma_io/v1alpha1/zones.rs +++ b/kube-custom-resources-rs/src/kuma_io/v1alpha1/zones.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kumahq/kuma/kuma.io/v1alpha1/zones.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1/kustomizations.rs b/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1/kustomizations.rs index ad430a882..0296a19df 100644 --- a/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1/kustomizations.rs +++ b/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1/kustomizations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/kustomize-controller/kustomize.toolkit.fluxcd.io/v1/kustomizations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1beta1/kustomizations.rs b/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1beta1/kustomizations.rs index b9fca9a30..d9e12950f 100644 --- a/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1beta1/kustomizations.rs +++ b/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1beta1/kustomizations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/kustomize-controller/kustomize.toolkit.fluxcd.io/v1beta1/kustomizations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1beta2/kustomizations.rs b/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1beta2/kustomizations.rs index 5e032f273..193e8acbf 100644 --- a/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1beta2/kustomizations.rs +++ b/kube-custom-resources-rs/src/kustomize_toolkit_fluxcd_io/v1beta2/kustomizations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/kustomize-controller/kustomize.toolkit.fluxcd.io/v1beta2/kustomizations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kyverno_io/v1/clusterpolicies.rs b/kube-custom-resources-rs/src/kyverno_io/v1/clusterpolicies.rs index 6e515b32c..23ccbb6e1 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v1/clusterpolicies.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v1/clusterpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v1/clusterpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -118,8 +118,8 @@ pub struct ClusterPolicyRules { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: ClusterPolicyRulesMatch, /// Mutation is used to modify matching resources. #[serde(default, skip_serializing_if = "Option::is_none")] pub mutate: Option, @@ -210,8 +210,8 @@ pub struct ClusterPolicyRulesContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -267,11 +267,22 @@ pub struct ClusterPolicyRulesContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyRulesContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyRulesContextConfigMap { @@ -1044,8 +1055,8 @@ pub struct ClusterPolicyRulesGenerateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -1101,11 +1112,22 @@ pub struct ClusterPolicyRulesGenerateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyRulesGenerateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyRulesGenerateForeachContextConfigMap { @@ -1850,8 +1872,8 @@ pub struct ClusterPolicyRulesMutateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -1907,11 +1929,22 @@ pub struct ClusterPolicyRulesMutateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyRulesMutateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyRulesMutateForeachContextConfigMap { @@ -2158,8 +2191,8 @@ pub struct ClusterPolicyRulesMutateTargetsContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -2215,11 +2248,22 @@ pub struct ClusterPolicyRulesMutateTargetsContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyRulesMutateTargetsContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyRulesMutateTargetsContextConfigMap { @@ -2736,8 +2780,8 @@ pub struct ClusterPolicyRulesValidateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -2793,11 +2837,22 @@ pub struct ClusterPolicyRulesValidateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyRulesValidateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyRulesValidateForeachContextConfigMap { @@ -4313,8 +4368,8 @@ pub struct ClusterPolicyStatusAutogenRules { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: ClusterPolicyStatusAutogenRulesMatch, /// Mutation is used to modify matching resources. #[serde(default, skip_serializing_if = "Option::is_none")] pub mutate: Option, @@ -4405,8 +4460,8 @@ pub struct ClusterPolicyStatusAutogenRulesContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -4462,11 +4517,22 @@ pub struct ClusterPolicyStatusAutogenRulesContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyStatusAutogenRulesContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyStatusAutogenRulesContextConfigMap { @@ -5239,8 +5305,8 @@ pub struct ClusterPolicyStatusAutogenRulesGenerateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -5296,11 +5362,22 @@ pub struct ClusterPolicyStatusAutogenRulesGenerateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyStatusAutogenRulesGenerateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyStatusAutogenRulesGenerateForeachContextConfigMap { @@ -6045,8 +6122,8 @@ pub struct ClusterPolicyStatusAutogenRulesMutateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -6102,11 +6179,22 @@ pub struct ClusterPolicyStatusAutogenRulesMutateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyStatusAutogenRulesMutateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyStatusAutogenRulesMutateForeachContextConfigMap { @@ -6353,8 +6441,8 @@ pub struct ClusterPolicyStatusAutogenRulesMutateTargetsContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -6410,11 +6498,22 @@ pub struct ClusterPolicyStatusAutogenRulesMutateTargetsContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyStatusAutogenRulesMutateTargetsContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyStatusAutogenRulesMutateTargetsContextConfigMap { @@ -6931,8 +7030,8 @@ pub struct ClusterPolicyStatusAutogenRulesValidateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -6988,11 +7087,22 @@ pub struct ClusterPolicyStatusAutogenRulesValidateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyStatusAutogenRulesValidateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyStatusAutogenRulesValidateForeachContextConfigMap { diff --git a/kube-custom-resources-rs/src/kyverno_io/v1/policies.rs b/kube-custom-resources-rs/src/kyverno_io/v1/policies.rs index 2107e5586..8eff64f28 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v1/policies.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v1/policies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v1/policies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -119,8 +119,8 @@ pub struct PolicyRules { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: PolicyRulesMatch, /// Mutation is used to modify matching resources. #[serde(default, skip_serializing_if = "Option::is_none")] pub mutate: Option, @@ -211,8 +211,8 @@ pub struct PolicyRulesContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -268,11 +268,22 @@ pub struct PolicyRulesContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyRulesContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyRulesContextConfigMap { @@ -1045,8 +1056,8 @@ pub struct PolicyRulesGenerateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -1102,11 +1113,22 @@ pub struct PolicyRulesGenerateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyRulesGenerateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyRulesGenerateForeachContextConfigMap { @@ -1851,8 +1873,8 @@ pub struct PolicyRulesMutateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -1908,11 +1930,22 @@ pub struct PolicyRulesMutateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyRulesMutateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyRulesMutateForeachContextConfigMap { @@ -2159,8 +2192,8 @@ pub struct PolicyRulesMutateTargetsContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -2216,11 +2249,22 @@ pub struct PolicyRulesMutateTargetsContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyRulesMutateTargetsContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyRulesMutateTargetsContextConfigMap { @@ -2737,8 +2781,8 @@ pub struct PolicyRulesValidateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -2794,11 +2838,22 @@ pub struct PolicyRulesValidateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyRulesValidateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyRulesValidateForeachContextConfigMap { @@ -4314,8 +4369,8 @@ pub struct PolicyStatusAutogenRules { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: PolicyStatusAutogenRulesMatch, /// Mutation is used to modify matching resources. #[serde(default, skip_serializing_if = "Option::is_none")] pub mutate: Option, @@ -4406,8 +4461,8 @@ pub struct PolicyStatusAutogenRulesContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -4463,11 +4518,22 @@ pub struct PolicyStatusAutogenRulesContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyStatusAutogenRulesContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyStatusAutogenRulesContextConfigMap { @@ -5240,8 +5306,8 @@ pub struct PolicyStatusAutogenRulesGenerateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -5297,11 +5363,22 @@ pub struct PolicyStatusAutogenRulesGenerateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyStatusAutogenRulesGenerateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyStatusAutogenRulesGenerateForeachContextConfigMap { @@ -6046,8 +6123,8 @@ pub struct PolicyStatusAutogenRulesMutateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -6103,11 +6180,22 @@ pub struct PolicyStatusAutogenRulesMutateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyStatusAutogenRulesMutateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyStatusAutogenRulesMutateForeachContextConfigMap { @@ -6354,8 +6442,8 @@ pub struct PolicyStatusAutogenRulesMutateTargetsContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -6411,11 +6499,22 @@ pub struct PolicyStatusAutogenRulesMutateTargetsContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyStatusAutogenRulesMutateTargetsContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyStatusAutogenRulesMutateTargetsContextConfigMap { @@ -6932,8 +7031,8 @@ pub struct PolicyStatusAutogenRulesValidateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -6989,11 +7088,22 @@ pub struct PolicyStatusAutogenRulesValidateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyStatusAutogenRulesValidateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyStatusAutogenRulesValidateForeachContextConfigMap { diff --git a/kube-custom-resources-rs/src/kyverno_io/v1alpha2/admissionreports.rs b/kube-custom-resources-rs/src/kyverno_io/v1alpha2/admissionreports.rs index 98743bbb7..f6483e897 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v1alpha2/admissionreports.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v1alpha2/admissionreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v1alpha2/admissionreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -79,7 +80,7 @@ pub struct AdmissionReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -133,60 +134,6 @@ pub struct AdmissionReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct AdmissionReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum AdmissionReportResultsResult { diff --git a/kube-custom-resources-rs/src/kyverno_io/v1alpha2/backgroundscanreports.rs b/kube-custom-resources-rs/src/kyverno_io/v1alpha2/backgroundscanreports.rs index a4df097ff..178abdc5d 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v1alpha2/backgroundscanreports.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v1alpha2/backgroundscanreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v1alpha2/backgroundscanreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -47,7 +48,7 @@ pub struct BackgroundScanReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -101,60 +102,6 @@ pub struct BackgroundScanReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct BackgroundScanReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum BackgroundScanReportResultsResult { diff --git a/kube-custom-resources-rs/src/kyverno_io/v1alpha2/clusteradmissionreports.rs b/kube-custom-resources-rs/src/kyverno_io/v1alpha2/clusteradmissionreports.rs index 7a9e60594..67915fe3e 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v1alpha2/clusteradmissionreports.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v1alpha2/clusteradmissionreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v1alpha2/clusteradmissionreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -78,7 +79,7 @@ pub struct ClusterAdmissionReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -132,60 +133,6 @@ pub struct ClusterAdmissionReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ClusterAdmissionReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum ClusterAdmissionReportResultsResult { diff --git a/kube-custom-resources-rs/src/kyverno_io/v1alpha2/clusterbackgroundscanreports.rs b/kube-custom-resources-rs/src/kyverno_io/v1alpha2/clusterbackgroundscanreports.rs index c97ad6499..68df22cce 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v1alpha2/clusterbackgroundscanreports.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v1alpha2/clusterbackgroundscanreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v1alpha2/clusterbackgroundscanreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -46,7 +47,7 @@ pub struct ClusterBackgroundScanReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -100,60 +101,6 @@ pub struct ClusterBackgroundScanReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ClusterBackgroundScanReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum ClusterBackgroundScanReportResultsResult { diff --git a/kube-custom-resources-rs/src/kyverno_io/v1beta1/updaterequests.rs b/kube-custom-resources-rs/src/kyverno_io/v1beta1/updaterequests.rs index e0dd40d8d..5ae61a8ad 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v1beta1/updaterequests.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v1beta1/updaterequests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v1beta1/updaterequests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2/admissionreports.rs b/kube-custom-resources-rs/src/kyverno_io/v2/admissionreports.rs index 7a57a18c2..d3c5a8996 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2/admissionreports.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2/admissionreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2/admissionreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -79,7 +80,7 @@ pub struct AdmissionReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -133,60 +134,6 @@ pub struct AdmissionReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct AdmissionReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum AdmissionReportResultsResult { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2/backgroundscanreports.rs b/kube-custom-resources-rs/src/kyverno_io/v2/backgroundscanreports.rs index 262e5bc94..78098f91c 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2/backgroundscanreports.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2/backgroundscanreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2/backgroundscanreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -47,7 +48,7 @@ pub struct BackgroundScanReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -101,60 +102,6 @@ pub struct BackgroundScanReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct BackgroundScanReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum BackgroundScanReportResultsResult { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2/cleanuppolicies.rs b/kube-custom-resources-rs/src/kyverno_io/v2/cleanuppolicies.rs index 0cd8feebb..f0debf310 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2/cleanuppolicies.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2/cleanuppolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2/cleanuppolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -35,8 +35,8 @@ pub struct CleanupPolicySpec { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: CleanupPolicyMatch, /// The schedule in Cron format pub schedule: String, } @@ -167,8 +167,8 @@ pub struct CleanupPolicyContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -224,11 +224,22 @@ pub struct CleanupPolicyContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct CleanupPolicyContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CleanupPolicyContextConfigMap { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2/clusteradmissionreports.rs b/kube-custom-resources-rs/src/kyverno_io/v2/clusteradmissionreports.rs index 4c3a1c133..315669a83 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2/clusteradmissionreports.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2/clusteradmissionreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2/clusteradmissionreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -78,7 +79,7 @@ pub struct ClusterAdmissionReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -132,60 +133,6 @@ pub struct ClusterAdmissionReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ClusterAdmissionReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum ClusterAdmissionReportResultsResult { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2/clusterbackgroundscanreports.rs b/kube-custom-resources-rs/src/kyverno_io/v2/clusterbackgroundscanreports.rs index 19aec585c..db5019328 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2/clusterbackgroundscanreports.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2/clusterbackgroundscanreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2/clusterbackgroundscanreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -46,7 +47,7 @@ pub struct ClusterBackgroundScanReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -100,60 +101,6 @@ pub struct ClusterBackgroundScanReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ClusterBackgroundScanReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum ClusterBackgroundScanReportResultsResult { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2/clustercleanuppolicies.rs b/kube-custom-resources-rs/src/kyverno_io/v2/clustercleanuppolicies.rs index f13890c6a..773ec691c 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2/clustercleanuppolicies.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2/clustercleanuppolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2/clustercleanuppolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -34,8 +34,8 @@ pub struct ClusterCleanupPolicySpec { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: ClusterCleanupPolicyMatch, /// The schedule in Cron format pub schedule: String, } @@ -166,8 +166,8 @@ pub struct ClusterCleanupPolicyContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -223,11 +223,22 @@ pub struct ClusterCleanupPolicyContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterCleanupPolicyContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterCleanupPolicyContextConfigMap { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2/policyexceptions.rs b/kube-custom-resources-rs/src/kyverno_io/v2/policyexceptions.rs index 6758e6273..df384b56d 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2/policyexceptions.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2/policyexceptions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2/policyexceptions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2/updaterequests.rs b/kube-custom-resources-rs/src/kyverno_io/v2/updaterequests.rs index 306f510fb..148f642fd 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2/updaterequests.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2/updaterequests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2/updaterequests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2alpha1/cleanuppolicies.rs b/kube-custom-resources-rs/src/kyverno_io/v2alpha1/cleanuppolicies.rs index a1883236e..fbbfabe43 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2alpha1/cleanuppolicies.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2alpha1/cleanuppolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2alpha1/cleanuppolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2alpha1/clustercleanuppolicies.rs b/kube-custom-resources-rs/src/kyverno_io/v2alpha1/clustercleanuppolicies.rs index 4910b913a..601d29edc 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2alpha1/clustercleanuppolicies.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2alpha1/clustercleanuppolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2alpha1/clustercleanuppolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2alpha1/globalcontextentries.rs b/kube-custom-resources-rs/src/kyverno_io/v2alpha1/globalcontextentries.rs index 848324730..285cf938b 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2alpha1/globalcontextentries.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2alpha1/globalcontextentries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2alpha1/globalcontextentries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -102,11 +102,22 @@ pub struct GlobalContextEntryApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct GlobalContextEntryApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// Stores a list of Kubernetes resources which will be cached. /// Mutually exclusive with APICall. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] diff --git a/kube-custom-resources-rs/src/kyverno_io/v2alpha1/policyexceptions.rs b/kube-custom-resources-rs/src/kyverno_io/v2alpha1/policyexceptions.rs index c95ea8d17..7e04ef554 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2alpha1/policyexceptions.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2alpha1/policyexceptions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2alpha1/policyexceptions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2beta1/cleanuppolicies.rs b/kube-custom-resources-rs/src/kyverno_io/v2beta1/cleanuppolicies.rs index 3037cc9d5..ce6203494 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2beta1/cleanuppolicies.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2beta1/cleanuppolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/cleanuppolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -35,8 +35,8 @@ pub struct CleanupPolicySpec { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: CleanupPolicyMatch, /// The schedule in Cron format pub schedule: String, } @@ -167,8 +167,8 @@ pub struct CleanupPolicyContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -224,11 +224,22 @@ pub struct CleanupPolicyContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct CleanupPolicyContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CleanupPolicyContextConfigMap { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2beta1/clustercleanuppolicies.rs b/kube-custom-resources-rs/src/kyverno_io/v2beta1/clustercleanuppolicies.rs index d1e87f176..a4a4f6ab7 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2beta1/clustercleanuppolicies.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2beta1/clustercleanuppolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/clustercleanuppolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -34,8 +34,8 @@ pub struct ClusterCleanupPolicySpec { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: ClusterCleanupPolicyMatch, /// The schedule in Cron format pub schedule: String, } @@ -166,8 +166,8 @@ pub struct ClusterCleanupPolicyContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -223,11 +223,22 @@ pub struct ClusterCleanupPolicyContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterCleanupPolicyContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterCleanupPolicyContextConfigMap { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2beta1/clusterpolicies.rs b/kube-custom-resources-rs/src/kyverno_io/v2beta1/clusterpolicies.rs index c109040be..1639c458c 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2beta1/clusterpolicies.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2beta1/clusterpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/clusterpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -114,8 +114,8 @@ pub struct ClusterPolicyRules { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: ClusterPolicyRulesMatch, /// Mutation is used to modify matching resources. #[serde(default, skip_serializing_if = "Option::is_none")] pub mutate: Option, @@ -201,8 +201,8 @@ pub struct ClusterPolicyRulesContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -258,11 +258,22 @@ pub struct ClusterPolicyRulesContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyRulesContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyRulesContextConfigMap { @@ -888,8 +899,8 @@ pub struct ClusterPolicyRulesGenerateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -945,11 +956,22 @@ pub struct ClusterPolicyRulesGenerateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyRulesGenerateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyRulesGenerateForeachContextConfigMap { @@ -1547,8 +1569,8 @@ pub struct ClusterPolicyRulesMutateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -1604,11 +1626,22 @@ pub struct ClusterPolicyRulesMutateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyRulesMutateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyRulesMutateForeachContextConfigMap { @@ -1855,8 +1888,8 @@ pub struct ClusterPolicyRulesMutateTargetsContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -1912,11 +1945,22 @@ pub struct ClusterPolicyRulesMutateTargetsContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyRulesMutateTargetsContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyRulesMutateTargetsContextConfigMap { @@ -2617,8 +2661,8 @@ pub struct ClusterPolicyRulesValidateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -2674,11 +2718,22 @@ pub struct ClusterPolicyRulesValidateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyRulesValidateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyRulesValidateForeachContextConfigMap { @@ -4169,8 +4224,8 @@ pub struct ClusterPolicyStatusAutogenRules { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: ClusterPolicyStatusAutogenRulesMatch, /// Mutation is used to modify matching resources. #[serde(default, skip_serializing_if = "Option::is_none")] pub mutate: Option, @@ -4261,8 +4316,8 @@ pub struct ClusterPolicyStatusAutogenRulesContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -4318,11 +4373,22 @@ pub struct ClusterPolicyStatusAutogenRulesContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyStatusAutogenRulesContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyStatusAutogenRulesContextConfigMap { @@ -5095,8 +5161,8 @@ pub struct ClusterPolicyStatusAutogenRulesGenerateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -5152,11 +5218,22 @@ pub struct ClusterPolicyStatusAutogenRulesGenerateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyStatusAutogenRulesGenerateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyStatusAutogenRulesGenerateForeachContextConfigMap { @@ -5901,8 +5978,8 @@ pub struct ClusterPolicyStatusAutogenRulesMutateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -5958,11 +6035,22 @@ pub struct ClusterPolicyStatusAutogenRulesMutateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyStatusAutogenRulesMutateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyStatusAutogenRulesMutateForeachContextConfigMap { @@ -6209,8 +6297,8 @@ pub struct ClusterPolicyStatusAutogenRulesMutateTargetsContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -6266,11 +6354,22 @@ pub struct ClusterPolicyStatusAutogenRulesMutateTargetsContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyStatusAutogenRulesMutateTargetsContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyStatusAutogenRulesMutateTargetsContextConfigMap { @@ -6787,8 +6886,8 @@ pub struct ClusterPolicyStatusAutogenRulesValidateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -6844,11 +6943,22 @@ pub struct ClusterPolicyStatusAutogenRulesValidateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct ClusterPolicyStatusAutogenRulesValidateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ClusterPolicyStatusAutogenRulesValidateForeachContextConfigMap { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2beta1/policies.rs b/kube-custom-resources-rs/src/kyverno_io/v2beta1/policies.rs index e4add7580..f1b86fe32 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2beta1/policies.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2beta1/policies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/policies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -115,8 +115,8 @@ pub struct PolicyRules { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: PolicyRulesMatch, /// Mutation is used to modify matching resources. #[serde(default, skip_serializing_if = "Option::is_none")] pub mutate: Option, @@ -202,8 +202,8 @@ pub struct PolicyRulesContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -259,11 +259,22 @@ pub struct PolicyRulesContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyRulesContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyRulesContextConfigMap { @@ -889,8 +900,8 @@ pub struct PolicyRulesGenerateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -946,11 +957,22 @@ pub struct PolicyRulesGenerateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyRulesGenerateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyRulesGenerateForeachContextConfigMap { @@ -1548,8 +1570,8 @@ pub struct PolicyRulesMutateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -1605,11 +1627,22 @@ pub struct PolicyRulesMutateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyRulesMutateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyRulesMutateForeachContextConfigMap { @@ -1856,8 +1889,8 @@ pub struct PolicyRulesMutateTargetsContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -1913,11 +1946,22 @@ pub struct PolicyRulesMutateTargetsContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyRulesMutateTargetsContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyRulesMutateTargetsContextConfigMap { @@ -2618,8 +2662,8 @@ pub struct PolicyRulesValidateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -2675,11 +2719,22 @@ pub struct PolicyRulesValidateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyRulesValidateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyRulesValidateForeachContextConfigMap { @@ -4170,8 +4225,8 @@ pub struct PolicyStatusAutogenRules { /// criteria can include resource information (e.g. kind, name, namespace, labels) /// and admission review request information like the user name or role. /// At least one kind is required. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "match")] - pub r#match: Option, + #[serde(rename = "match")] + pub r#match: PolicyStatusAutogenRulesMatch, /// Mutation is used to modify matching resources. #[serde(default, skip_serializing_if = "Option::is_none")] pub mutate: Option, @@ -4262,8 +4317,8 @@ pub struct PolicyStatusAutogenRulesContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -4319,11 +4374,22 @@ pub struct PolicyStatusAutogenRulesContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyStatusAutogenRulesContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyStatusAutogenRulesContextConfigMap { @@ -5096,8 +5162,8 @@ pub struct PolicyStatusAutogenRulesGenerateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -5153,11 +5219,22 @@ pub struct PolicyStatusAutogenRulesGenerateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyStatusAutogenRulesGenerateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyStatusAutogenRulesGenerateForeachContextConfigMap { @@ -5902,8 +5979,8 @@ pub struct PolicyStatusAutogenRulesMutateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -5959,11 +6036,22 @@ pub struct PolicyStatusAutogenRulesMutateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyStatusAutogenRulesMutateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyStatusAutogenRulesMutateForeachContextConfigMap { @@ -6210,8 +6298,8 @@ pub struct PolicyStatusAutogenRulesMutateTargetsContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -6267,11 +6355,22 @@ pub struct PolicyStatusAutogenRulesMutateTargetsContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyStatusAutogenRulesMutateTargetsContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyStatusAutogenRulesMutateTargetsContextConfigMap { @@ -6788,8 +6887,8 @@ pub struct PolicyStatusAutogenRulesValidateForeachContextApiCall { /// Only applicable when the method field is set to POST. #[serde(default, skip_serializing_if = "Option::is_none")] pub data: Option>, - /// Default is an optional arbitrary JSON object that the context may take if the apiCall - /// returns error + /// Default is an optional arbitrary JSON object that the context + /// value is set to, if the apiCall returns error. #[serde(default, skip_serializing_if = "Option::is_none")] pub default: Option, /// JMESPath is an optional JSON Match Expression that can be used to @@ -6845,11 +6944,22 @@ pub struct PolicyStatusAutogenRulesValidateForeachContextApiCallService { /// the server certificate. #[serde(default, skip_serializing_if = "Option::is_none", rename = "caBundle")] pub ca_bundle: Option, + /// Headers is a list of optional HTTP headers to be included in the request. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub headers: Option>, /// URL is the JSON web service URL. A typical form is /// `https://{service}.{namespace}:{port}/{path}`. pub url: String, } +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PolicyStatusAutogenRulesValidateForeachContextApiCallServiceHeaders { + /// Key is the header key + pub key: String, + /// Value is the header value + pub value: String, +} + /// ConfigMap is the ConfigMap reference. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PolicyStatusAutogenRulesValidateForeachContextConfigMap { diff --git a/kube-custom-resources-rs/src/kyverno_io/v2beta1/policyexceptions.rs b/kube-custom-resources-rs/src/kyverno_io/v2beta1/policyexceptions.rs index 48d9b9503..be89ed11d 100644 --- a/kube-custom-resources-rs/src/kyverno_io/v2beta1/policyexceptions.rs +++ b/kube-custom-resources-rs/src/kyverno_io/v2beta1/policyexceptions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/kyverno.io/v2beta1/policyexceptions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/codesigningconfigs.rs b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/codesigningconfigs.rs index a375636e7..488ed2fb0 100644 --- a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/codesigningconfigs.rs +++ b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/codesigningconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/codesigningconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/eventsourcemappings.rs b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/eventsourcemappings.rs index 66479e5a6..7d3a379d6 100644 --- a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/eventsourcemappings.rs +++ b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/eventsourcemappings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/eventsourcemappings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -257,6 +257,8 @@ pub struct EventSourceMappingEventSourceRef { pub struct EventSourceMappingEventSourceRefFrom { #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } /// An object that defines the filter criteria that determine whether Lambda @@ -298,6 +300,8 @@ pub struct EventSourceMappingFunctionRef { pub struct EventSourceMappingFunctionRefFrom { #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } /// AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference @@ -322,6 +326,8 @@ pub struct EventSourceMappingQueueRefs { pub struct EventSourceMappingQueueRefsFrom { #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } /// (Amazon SQS only) The scaling configuration for the event source. For more diff --git a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/functions.rs b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/functions.rs index be5647983..ef1c1c759 100644 --- a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/functions.rs +++ b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/functions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/functions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -214,6 +214,8 @@ pub struct FunctionCodeS3BucketRef { pub struct FunctionCodeS3BucketRefFrom { #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } /// A dead-letter queue configuration that specifies the queue or topic where @@ -346,6 +348,8 @@ pub struct FunctionKmsKeyRef { pub struct FunctionKmsKeyRefFrom { #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } /// AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference @@ -370,6 +374,8 @@ pub struct FunctionRoleRef { pub struct FunctionRoleRefFrom { #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } /// The function's SnapStart (https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html) @@ -429,6 +435,8 @@ pub struct FunctionVpcConfigSecurityGroupRefs { pub struct FunctionVpcConfigSecurityGroupRefsFrom { #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } /// AWSResourceReferenceWrapper provides a wrapper around *AWSResourceReference @@ -453,6 +461,8 @@ pub struct FunctionVpcConfigSubnetRefs { pub struct FunctionVpcConfigSubnetRefsFrom { #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } /// FunctionStatus defines the observed state of Function diff --git a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/functionurlconfigs.rs b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/functionurlconfigs.rs index 8ee28bf69..232a3dd84 100644 --- a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/functionurlconfigs.rs +++ b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/functionurlconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/functionurlconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -106,6 +106,8 @@ pub struct FunctionURLConfigFunctionRef { pub struct FunctionURLConfigFunctionRefFrom { #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } /// FunctionURLConfigStatus defines the observed state of FunctionURLConfig diff --git a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/layerversions.rs b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/layerversions.rs index 1e980881c..3e4f3b86c 100644 --- a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/layerversions.rs +++ b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/layerversions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/layerversions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/versions.rs b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/versions.rs index a1822c23c..b59ffc638 100644 --- a/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/versions.rs +++ b/kube-custom-resources-rs/src/lambda_services_k8s_aws/v1alpha1/versions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/lambda-controller/lambda.services.k8s.aws/v1alpha1/versions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -133,6 +133,8 @@ pub struct VersionFunctionRef { pub struct VersionFunctionRefFrom { #[serde(default, skip_serializing_if = "Option::is_none")] pub name: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub namespace: Option, } #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] diff --git a/kube-custom-resources-rs/src/leaksignal_com/v1/cluster_leaksignal_istios.rs b/kube-custom-resources-rs/src/leaksignal_com/v1/cluster_leaksignal_istios.rs index 96e733d02..b92800bed 100644 --- a/kube-custom-resources-rs/src/leaksignal_com/v1/cluster_leaksignal_istios.rs +++ b/kube-custom-resources-rs/src/leaksignal_com/v1/cluster_leaksignal_istios.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/leaksignal/leaksignal-operator/leaksignal.com/v1/cluster-leaksignal-istios.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/leaksignal_com/v1/leaksignal_istios.rs b/kube-custom-resources-rs/src/leaksignal_com/v1/leaksignal_istios.rs index f96ae710c..a3c126ba7 100644 --- a/kube-custom-resources-rs/src/leaksignal_com/v1/leaksignal_istios.rs +++ b/kube-custom-resources-rs/src/leaksignal_com/v1/leaksignal_istios.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/leaksignal/leaksignal-operator/leaksignal.com/v1/leaksignal-istios.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/bitwarden_secrets.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/bitwarden_secrets.rs index d1235a77b..b6be5859c 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/bitwarden_secrets.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/bitwarden_secrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta4/bitwarden-secrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/bitwarden_templates.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/bitwarden_templates.rs index 6238f1875..4c2c0c240 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/bitwarden_templates.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/bitwarden_templates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta4/bitwarden-templates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/registry_credentials.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/registry_credentials.rs index 2807087bd..b9eac4ba3 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/registry_credentials.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta4/registry_credentials.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta4/registry-credentials.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/bitwarden_secrets.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/bitwarden_secrets.rs index f83bf3445..d04d616a1 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/bitwarden_secrets.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/bitwarden_secrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta5/bitwarden-secrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/bitwarden_templates.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/bitwarden_templates.rs index 05b7e9167..846156c1e 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/bitwarden_templates.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/bitwarden_templates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta5/bitwarden-templates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/registry_credentials.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/registry_credentials.rs index f93032eea..48ebcd24c 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/registry_credentials.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta5/registry_credentials.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta5/registry-credentials.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/bitwarden_secrets.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/bitwarden_secrets.rs index dc6110dc7..2a9086aee 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/bitwarden_secrets.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/bitwarden_secrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta6/bitwarden-secrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/bitwarden_templates.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/bitwarden_templates.rs index effc42d69..cb3de6ef2 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/bitwarden_templates.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/bitwarden_templates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta6/bitwarden-templates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/registry_credentials.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/registry_credentials.rs index 36c5d78d7..0bbb4557c 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/registry_credentials.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta6/registry_credentials.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta6/registry-credentials.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/bitwarden_secrets.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/bitwarden_secrets.rs index 4b59ee099..2f56aac55 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/bitwarden_secrets.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/bitwarden_secrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta7/bitwarden-secrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/bitwarden_templates.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/bitwarden_templates.rs index 4dfcb549d..6fb08534d 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/bitwarden_templates.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/bitwarden_templates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta7/bitwarden-templates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/registry_credentials.rs b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/registry_credentials.rs index a07829d3c..e2a39a7f7 100644 --- a/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/registry_credentials.rs +++ b/kube-custom-resources-rs/src/lerentis_uploadfilter24_eu/v1beta7/registry_credentials.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Lerentis/bitwarden-crd-operator/lerentis.uploadfilter24.eu/v1beta7/registry-credentials.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/limitador_kuadrant_io/v1alpha1/limitadors.rs b/kube-custom-resources-rs/src/limitador_kuadrant_io/v1alpha1/limitadors.rs index 8acea7842..b047157db 100644 --- a/kube-custom-resources-rs/src/limitador_kuadrant_io/v1alpha1/limitadors.rs +++ b/kube-custom-resources-rs/src/limitador_kuadrant_io/v1alpha1/limitadors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Kuadrant/limitador-operator/limitador.kuadrant.io/v1alpha1/limitadors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosengines.rs b/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosengines.rs index 049ecfb77..1e55bfb1a 100644 --- a/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosengines.rs +++ b/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosengines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/litmuschaos/chaos-operator/litmuschaos.io/v1alpha1/chaosengines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosexperiments.rs b/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosexperiments.rs index 2d7c65874..35cfe7290 100644 --- a/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosexperiments.rs +++ b/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosexperiments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/litmuschaos/chaos-operator/litmuschaos.io/v1alpha1/chaosexperiments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosresults.rs b/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosresults.rs index ef6afa3f7..10304e1f8 100644 --- a/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosresults.rs +++ b/kube-custom-resources-rs/src/litmuschaos_io/v1alpha1/chaosresults.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/litmuschaos/chaos-operator/litmuschaos.io/v1alpha1/chaosresults.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusterflows.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusterflows.rs index 6bf25291f..ac7f23ff0 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusterflows.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusterflows.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/clusterflows.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusteroutputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusteroutputs.rs index 7bda2fc2e..252cc7469 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusteroutputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/clusteroutputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/clusteroutputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/flows.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/flows.rs index 30e8fe795..28bd8836e 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/flows.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/flows.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/flows.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/loggings.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/loggings.rs index 41391af32..b1712d083 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/loggings.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/loggings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/loggings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/outputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/outputs.rs index 5998cdfbd..c9cd02d97 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/outputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1alpha1/outputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1alpha1/outputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusterflows.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusterflows.rs index 389f27db9..ad6561fec 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusterflows.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusterflows.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/clusterflows.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusteroutputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusteroutputs.rs index 853b8727d..baa82b5f7 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusteroutputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/clusteroutputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/clusteroutputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/flows.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/flows.rs index fd13aaf20..30bd4a275 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/flows.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/flows.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/flows.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/outputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/outputs.rs index 30957647a..57eb531ac 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/outputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/outputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/outputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusterflows.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusterflows.rs index c87b1b76e..ed99e3473 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusterflows.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusterflows.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngclusterflows.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusteroutputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusteroutputs.rs index 5ed3a8c71..daf64fe80 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusteroutputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngclusteroutputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngclusteroutputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngflows.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngflows.rs index ecdcfcac6..2d4db5f45 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngflows.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngflows.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngflows.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngoutputs.rs b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngoutputs.rs index 10764b9e3..945b17f77 100644 --- a/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngoutputs.rs +++ b/kube-custom-resources-rs/src/logging_banzaicloud_io/v1beta1/syslogngoutputs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging.banzaicloud.io/v1beta1/syslogngoutputs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/logging_extensions_banzaicloud_io/v1alpha1/hosttailers.rs b/kube-custom-resources-rs/src/logging_extensions_banzaicloud_io/v1alpha1/hosttailers.rs index 0db59a4e2..ac003f988 100644 --- a/kube-custom-resources-rs/src/logging_extensions_banzaicloud_io/v1alpha1/hosttailers.rs +++ b/kube-custom-resources-rs/src/logging_extensions_banzaicloud_io/v1alpha1/hosttailers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kube-logging/logging-operator/logging-extensions.banzaicloud.io/v1alpha1/hosttailers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/loki_grafana_com/v1/alertingrules.rs b/kube-custom-resources-rs/src/loki_grafana_com/v1/alertingrules.rs index 7ee025dc1..f29a4d096 100644 --- a/kube-custom-resources-rs/src/loki_grafana_com/v1/alertingrules.rs +++ b/kube-custom-resources-rs/src/loki_grafana_com/v1/alertingrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/loki/loki.grafana.com/v1/alertingrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/loki_grafana_com/v1/lokistacks.rs b/kube-custom-resources-rs/src/loki_grafana_com/v1/lokistacks.rs index d08695876..a90aa9118 100644 --- a/kube-custom-resources-rs/src/loki_grafana_com/v1/lokistacks.rs +++ b/kube-custom-resources-rs/src/loki_grafana_com/v1/lokistacks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/loki/loki.grafana.com/v1/lokistacks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -119,6 +119,11 @@ pub struct LokiStackLimitsGlobal { /// IngestionLimits defines the limits applied on ingested log streams. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingestion: Option, + /// OTLP to configure which resource, scope and log attributes + /// to store as labels or structured metadata or drop them altogether + /// for all tenants. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub otlp: Option, /// QueryLimits defines the limit applied on querying log streams. #[serde(default, skip_serializing_if = "Option::is_none")] pub queries: Option, @@ -169,6 +174,125 @@ pub struct LokiStackLimitsGlobalIngestion { pub per_stream_rate_limit_burst: Option, } +/// OTLP to configure which resource, scope and log attributes +/// to store as labels or structured metadata or drop them altogether +/// for all tenants. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct LokiStackLimitsGlobalOtlp { + /// IndexedResourceAttributes contains the global configuration for resource attributes + /// to store them as index labels or structured metadata or drop them altogether. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "indexedResourceAttributes")] + pub indexed_resource_attributes: Option>, + /// LogAttributes contains the configuration for log attributes + /// to store them as index labels or structured metadata or drop them altogether. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "logAttributes")] + pub log_attributes: Option>, + /// ResourceAttributes contains the configuration for resource attributes + /// to store them as index labels or structured metadata or drop them altogether. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceAttributes")] + pub resource_attributes: Option, + /// ScopeAttributes contains the configuration for scope attributes + /// to store them as index labels or structured metadata or drop them altogether. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "scopeAttributes")] + pub scope_attributes: Option>, +} + +/// OTLPAttributesSpec contains the configuration for a set of attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct LokiStackLimitsGlobalOtlpLogAttributes { + /// Action defines the indexing action for the selected attributes. They + /// can be either added to structured metadata or drop altogether. + pub action: LokiStackLimitsGlobalOtlpLogAttributesAction, + /// Attributes allows choosing the attributes by listing their names. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub attributes: Option>, + /// Regex allows choosing the attributes by matching a regular expression. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub regex: Option, +} + +/// OTLPAttributesSpec contains the configuration for a set of attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum LokiStackLimitsGlobalOtlpLogAttributesAction { + #[serde(rename = "structured_metadata")] + StructuredMetadata, + #[serde(rename = "drop")] + Drop, +} + +/// ResourceAttributes contains the configuration for resource attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct LokiStackLimitsGlobalOtlpResourceAttributes { + /// Attributes contains the configuration for resource attributes + /// to store them as index labels or structured metadata or drop them altogether. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub attributes: Option>, + /// IgnoreDefaults controls whether to ignore the global configuration for resource attributes + /// indexed as labels. + /// + /// + /// If IgnoreDefaults is true, then this spec needs to contain at least one mapping to a index label. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "ignoreDefaults")] + pub ignore_defaults: Option, +} + +/// OTLPResourceAttributesConfigSpec contains the configuration for a set of resource attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct LokiStackLimitsGlobalOtlpResourceAttributesAttributes { + /// Action defines the indexing action for the selected resoure attributes. They + /// can be either indexed as labels, added to structured metadata or drop altogether. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub action: Option, + /// Attributes is the list of attributes to configure indexing or drop them + /// altogether. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub attributes: Option>, + /// Regex allows choosing the attributes by matching a regular expression. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub regex: Option, +} + +/// OTLPResourceAttributesConfigSpec contains the configuration for a set of resource attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum LokiStackLimitsGlobalOtlpResourceAttributesAttributesAction { + #[serde(rename = "index_label")] + IndexLabel, + #[serde(rename = "structured_metadata")] + StructuredMetadata, + #[serde(rename = "drop")] + Drop, +} + +/// OTLPAttributesSpec contains the configuration for a set of attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct LokiStackLimitsGlobalOtlpScopeAttributes { + /// Action defines the indexing action for the selected attributes. They + /// can be either added to structured metadata or drop altogether. + pub action: LokiStackLimitsGlobalOtlpScopeAttributesAction, + /// Attributes allows choosing the attributes by listing their names. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub attributes: Option>, + /// Regex allows choosing the attributes by matching a regular expression. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub regex: Option, +} + +/// OTLPAttributesSpec contains the configuration for a set of attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum LokiStackLimitsGlobalOtlpScopeAttributesAction { + #[serde(rename = "structured_metadata")] + StructuredMetadata, + #[serde(rename = "drop")] + Drop, +} + /// QueryLimits defines the limit applied on querying log streams. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct LokiStackLimitsGlobalQueries { @@ -223,6 +347,11 @@ pub struct LokiStackLimitsTenants { /// IngestionLimits defines the limits applied on ingested log streams. #[serde(default, skip_serializing_if = "Option::is_none")] pub ingestion: Option, + /// OTLP to configure which resource, scope and log attributes + /// to store as labels or structured metadata or drop them altogether + /// for a single tenants. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub otlp: Option, /// QueryLimits defines the limit applied on querying log streams. #[serde(default, skip_serializing_if = "Option::is_none")] pub queries: Option, @@ -273,6 +402,121 @@ pub struct LokiStackLimitsTenantsIngestion { pub per_stream_rate_limit_burst: Option, } +/// OTLP to configure which resource, scope and log attributes +/// to store as labels or structured metadata or drop them altogether +/// for a single tenants. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct LokiStackLimitsTenantsOtlp { + /// LogAttributes contains the configuration for log attributes + /// to store them as index labels or structured metadata or drop them altogether. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "logAttributes")] + pub log_attributes: Option>, + /// ResourceAttributes contains the configuration for resource attributes + /// to store them as index labels or structured metadata or drop them altogether. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceAttributes")] + pub resource_attributes: Option, + /// ScopeAttributes contains the configuration for scope attributes + /// to store them as index labels or structured metadata or drop them altogether. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "scopeAttributes")] + pub scope_attributes: Option>, +} + +/// OTLPAttributesSpec contains the configuration for a set of attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct LokiStackLimitsTenantsOtlpLogAttributes { + /// Action defines the indexing action for the selected attributes. They + /// can be either added to structured metadata or drop altogether. + pub action: LokiStackLimitsTenantsOtlpLogAttributesAction, + /// Attributes allows choosing the attributes by listing their names. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub attributes: Option>, + /// Regex allows choosing the attributes by matching a regular expression. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub regex: Option, +} + +/// OTLPAttributesSpec contains the configuration for a set of attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum LokiStackLimitsTenantsOtlpLogAttributesAction { + #[serde(rename = "structured_metadata")] + StructuredMetadata, + #[serde(rename = "drop")] + Drop, +} + +/// ResourceAttributes contains the configuration for resource attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct LokiStackLimitsTenantsOtlpResourceAttributes { + /// Attributes contains the configuration for resource attributes + /// to store them as index labels or structured metadata or drop them altogether. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub attributes: Option>, + /// IgnoreDefaults controls whether to ignore the global configuration for resource attributes + /// indexed as labels. + /// + /// + /// If IgnoreDefaults is true, then this spec needs to contain at least one mapping to a index label. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "ignoreDefaults")] + pub ignore_defaults: Option, +} + +/// OTLPResourceAttributesConfigSpec contains the configuration for a set of resource attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct LokiStackLimitsTenantsOtlpResourceAttributesAttributes { + /// Action defines the indexing action for the selected resoure attributes. They + /// can be either indexed as labels, added to structured metadata or drop altogether. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub action: Option, + /// Attributes is the list of attributes to configure indexing or drop them + /// altogether. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub attributes: Option>, + /// Regex allows choosing the attributes by matching a regular expression. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub regex: Option, +} + +/// OTLPResourceAttributesConfigSpec contains the configuration for a set of resource attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum LokiStackLimitsTenantsOtlpResourceAttributesAttributesAction { + #[serde(rename = "index_label")] + IndexLabel, + #[serde(rename = "structured_metadata")] + StructuredMetadata, + #[serde(rename = "drop")] + Drop, +} + +/// OTLPAttributesSpec contains the configuration for a set of attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct LokiStackLimitsTenantsOtlpScopeAttributes { + /// Action defines the indexing action for the selected attributes. They + /// can be either added to structured metadata or drop altogether. + pub action: LokiStackLimitsTenantsOtlpScopeAttributesAction, + /// Attributes allows choosing the attributes by listing their names. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub attributes: Option>, + /// Regex allows choosing the attributes by matching a regular expression. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub regex: Option, +} + +/// OTLPAttributesSpec contains the configuration for a set of attributes +/// to store them as index labels or structured metadata or drop them altogether. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum LokiStackLimitsTenantsOtlpScopeAttributesAction { + #[serde(rename = "structured_metadata")] + StructuredMetadata, + #[serde(rename = "drop")] + Drop, +} + /// QueryLimits defines the limit applied on querying log streams. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct LokiStackLimitsTenantsQueries { diff --git a/kube-custom-resources-rs/src/loki_grafana_com/v1/recordingrules.rs b/kube-custom-resources-rs/src/loki_grafana_com/v1/recordingrules.rs index 01a373000..9aeb3b77c 100644 --- a/kube-custom-resources-rs/src/loki_grafana_com/v1/recordingrules.rs +++ b/kube-custom-resources-rs/src/loki_grafana_com/v1/recordingrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/loki/loki.grafana.com/v1/recordingrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/loki_grafana_com/v1/rulerconfigs.rs b/kube-custom-resources-rs/src/loki_grafana_com/v1/rulerconfigs.rs index f5eab233f..72e035752 100644 --- a/kube-custom-resources-rs/src/loki_grafana_com/v1/rulerconfigs.rs +++ b/kube-custom-resources-rs/src/loki_grafana_com/v1/rulerconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/loki/loki.grafana.com/v1/rulerconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/alertingrules.rs b/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/alertingrules.rs index 661563ac0..f461310dc 100644 --- a/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/alertingrules.rs +++ b/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/alertingrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/loki/loki.grafana.com/v1beta1/alertingrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/lokistacks.rs b/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/lokistacks.rs index 70371c2c6..6ddac6358 100644 --- a/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/lokistacks.rs +++ b/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/lokistacks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/loki/loki.grafana.com/v1beta1/lokistacks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/recordingrules.rs b/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/recordingrules.rs index c20d2b7b2..f104b3853 100644 --- a/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/recordingrules.rs +++ b/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/recordingrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/loki/loki.grafana.com/v1beta1/recordingrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/rulerconfigs.rs b/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/rulerconfigs.rs index d44017a98..64fe843ad 100644 --- a/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/rulerconfigs.rs +++ b/kube-custom-resources-rs/src/loki_grafana_com/v1beta1/rulerconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/loki/loki.grafana.com/v1beta1/rulerconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimagedatasources.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimagedatasources.rs index e7d883255..4a400a93b 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimagedatasources.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimagedatasources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/backingimagedatasources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimagemanagers.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimagemanagers.rs index 2f3b8335e..46676653c 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimagemanagers.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimagemanagers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/backingimagemanagers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimages.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimages.rs index 92ab84248..c1c49369c 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimages.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backingimages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/backingimages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backups.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backups.rs index 6751180e1..180694290 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backups.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backuptargets.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backuptargets.rs index 5f54236fc..407b62f7e 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backuptargets.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backuptargets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/backuptargets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backupvolumes.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backupvolumes.rs index da2995103..8ae846658 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/backupvolumes.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/backupvolumes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/backupvolumes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/engineimages.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/engineimages.rs index 96eeb2fb9..916004b89 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/engineimages.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/engineimages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/engineimages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/engines.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/engines.rs index 5144a21aa..6da821e71 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/engines.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/engines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/engines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/instancemanagers.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/instancemanagers.rs index 2ddf68521..4ca2c280e 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/instancemanagers.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/instancemanagers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/instancemanagers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/nodes.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/nodes.rs index 1d1bf3637..41071e3aa 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/nodes.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/nodes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/nodes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/recurringjobs.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/recurringjobs.rs index 228c25fcc..2d5fab2b6 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/recurringjobs.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/recurringjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/recurringjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/replicas.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/replicas.rs index fdf217f66..3faff752b 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/replicas.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/replicas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/replicas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/settings.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/settings.rs index be697e03f..580d9b6a5 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/settings.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/settings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/settings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/sharemanagers.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/sharemanagers.rs index 99ee46411..2322d77a1 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/sharemanagers.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/sharemanagers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/sharemanagers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta1/volumes.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta1/volumes.rs index 2adedac9e..f13b65624 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta1/volumes.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta1/volumes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta1/volumes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimagedatasources.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimagedatasources.rs index 7413cf62b..a9c6612a1 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimagedatasources.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimagedatasources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backingimagedatasources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimagemanagers.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimagemanagers.rs index 3b7c6b5d9..f1063f287 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimagemanagers.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimagemanagers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backingimagemanagers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimages.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimages.rs index 707596fe9..425f0ad14 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimages.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backingimages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backingimages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backupbackingimages.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backupbackingimages.rs index 7cfe8d7e1..9cc552402 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backupbackingimages.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backupbackingimages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backupbackingimages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -67,6 +67,12 @@ pub struct BackupBackingImageStatus { /// The backing image backup progress. #[serde(default, skip_serializing_if = "Option::is_none")] pub progress: Option, + /// Record the secret if this backup backing image is encrypted + #[serde(default, skip_serializing_if = "Option::is_none")] + pub secret: Option, + /// Record the secret namespace if this backup backing image is encrypted + #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretNamespace")] + pub secret_namespace: Option, /// The backing image size. #[serde(default, skip_serializing_if = "Option::is_none")] pub size: Option, diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backups.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backups.rs index 626d7e40d..b56754d1c 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backups.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backuptargets.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backuptargets.rs index fe3964e95..f9af5a8c3 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backuptargets.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backuptargets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backuptargets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backupvolumes.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backupvolumes.rs index 67077f2f8..39144175f 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/backupvolumes.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/backupvolumes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/backupvolumes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/engineimages.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/engineimages.rs index 130bd85b5..1d92dc718 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/engineimages.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/engineimages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/engineimages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/engines.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/engines.rs index 5532ebfaa..a47459260 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/engines.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/engines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/engines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/instancemanagers.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/instancemanagers.rs index ba3767942..f12351381 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/instancemanagers.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/instancemanagers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/instancemanagers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/nodes.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/nodes.rs index c25ca7c74..348b5b039 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/nodes.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/nodes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/nodes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/orphans.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/orphans.rs index 1bedaf88b..38886fe66 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/orphans.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/orphans.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/orphans.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/recurringjobs.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/recurringjobs.rs index a9a9dcd8b..8986b51be 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/recurringjobs.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/recurringjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/recurringjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/replicas.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/replicas.rs index c4bfc88f0..3468c2b47 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/replicas.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/replicas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/replicas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/settings.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/settings.rs index 2696de5e5..8f9e8d7dd 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/settings.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/settings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/settings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/sharemanagers.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/sharemanagers.rs index 2b373aee9..6d80ae0ea 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/sharemanagers.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/sharemanagers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/sharemanagers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/snapshots.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/snapshots.rs index a4d07fd84..a833b21fa 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/snapshots.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/snapshots.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/snapshots.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/supportbundles.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/supportbundles.rs index 85b61daf5..5153d42d2 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/supportbundles.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/supportbundles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/supportbundles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/systembackups.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/systembackups.rs index 85d23a76f..5e038c832 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/systembackups.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/systembackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/systembackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/systemrestores.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/systemrestores.rs index 5f97e45ef..00dd8b0ec 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/systemrestores.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/systemrestores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/systemrestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/volumeattachments.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/volumeattachments.rs index 4d0af44f5..a5ef0493a 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/volumeattachments.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/volumeattachments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/volumeattachments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/longhorn_io/v1beta2/volumes.rs b/kube-custom-resources-rs/src/longhorn_io/v1beta2/volumes.rs index ec3f50f56..b4d615b77 100644 --- a/kube-custom-resources-rs/src/longhorn_io/v1beta2/volumes.rs +++ b/kube-custom-resources-rs/src/longhorn_io/v1beta2/volumes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/longhorn/longhorn/longhorn.io/v1beta2/volumes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/moodles.rs b/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/moodles.rs index d2a77b139..4eacdba21 100644 --- a/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/moodles.rs +++ b/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/moodles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/krestomatio/moodle-operator/m4e.krestomat.io/v1alpha1/moodles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/nginxes.rs b/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/nginxes.rs index 6265e9145..c89ccc68a 100644 --- a/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/nginxes.rs +++ b/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/nginxes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/krestomatio/moodle-operator/m4e.krestomat.io/v1alpha1/nginxes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/phpfpms.rs b/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/phpfpms.rs index ccf678aeb..699b6e778 100644 --- a/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/phpfpms.rs +++ b/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/phpfpms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/krestomatio/moodle-operator/m4e.krestomat.io/v1alpha1/phpfpms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/routines.rs b/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/routines.rs index 1e49efc1f..36fa678cb 100644 --- a/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/routines.rs +++ b/kube-custom-resources-rs/src/m4e_krestomat_io/v1alpha1/routines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/krestomatio/moodle-operator/m4e.krestomat.io/v1alpha1/routines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/machine_deletion_remediation_medik8s_io/v1alpha1/machinedeletionremediations.rs b/kube-custom-resources-rs/src/machine_deletion_remediation_medik8s_io/v1alpha1/machinedeletionremediations.rs index 92864ccf5..dc8ae39cb 100644 --- a/kube-custom-resources-rs/src/machine_deletion_remediation_medik8s_io/v1alpha1/machinedeletionremediations.rs +++ b/kube-custom-resources-rs/src/machine_deletion_remediation_medik8s_io/v1alpha1/machinedeletionremediations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/medik8s/machine-deletion-remediation/machine-deletion-remediation.medik8s.io/v1alpha1/machinedeletionremediations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/machine_deletion_remediation_medik8s_io/v1alpha1/machinedeletionremediationtemplates.rs b/kube-custom-resources-rs/src/machine_deletion_remediation_medik8s_io/v1alpha1/machinedeletionremediationtemplates.rs index d611e4ffb..24213e7af 100644 --- a/kube-custom-resources-rs/src/machine_deletion_remediation_medik8s_io/v1alpha1/machinedeletionremediationtemplates.rs +++ b/kube-custom-resources-rs/src/machine_deletion_remediation_medik8s_io/v1alpha1/machinedeletionremediationtemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/medik8s/machine-deletion-remediation/machine-deletion-remediation.medik8s.io/v1alpha1/machinedeletionremediationtemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/maps_k8s_elastic_co/v1alpha1/elasticmapsservers.rs b/kube-custom-resources-rs/src/maps_k8s_elastic_co/v1alpha1/elasticmapsservers.rs index cd0aaa9b7..b4cda558e 100644 --- a/kube-custom-resources-rs/src/maps_k8s_elastic_co/v1alpha1/elasticmapsservers.rs +++ b/kube-custom-resources-rs/src/maps_k8s_elastic_co/v1alpha1/elasticmapsservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/elastic/cloud-on-k8s/maps.k8s.elastic.co/v1alpha1/elasticmapsservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/backups.rs b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/backups.rs index 29da9f142..755be476a 100644 --- a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/backups.rs +++ b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/mariadb.mmontes.io/v1alpha1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/connections.rs b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/connections.rs index 579ce732d..75c2bd7f3 100644 --- a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/connections.rs +++ b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/connections.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/mariadb.mmontes.io/v1alpha1/connections.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -34,7 +35,7 @@ pub struct ConnectionSpec { pub maria_db_ref: Option, /// MaxScaleRef is a reference to the MaxScale to connect to. Either MariaDBRef or MaxScaleRef must be provided. #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxScaleRef")] - pub max_scale_ref: Option, + pub max_scale_ref: Option, /// Params to be used in the Connection. #[serde(default, skip_serializing_if = "Option::is_none")] pub params: Option>, diff --git a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/databases.rs b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/databases.rs index f745f46af..d1d8f5a3d 100644 --- a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/databases.rs +++ b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/databases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/mariadb.mmontes.io/v1alpha1/databases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/grants.rs b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/grants.rs index 4945381ec..901e7e20c 100644 --- a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/grants.rs +++ b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/grants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/mariadb.mmontes.io/v1alpha1/grants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/mariadbs.rs b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/mariadbs.rs index b126124c5..0de283477 100644 --- a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/mariadbs.rs +++ b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/mariadbs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/mariadb.mmontes.io/v1alpha1/mariadbs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -74,7 +75,7 @@ pub struct MariaDBSpec { pub max_scale: Option, /// MaxScaleRef is a reference to a MaxScale resource to be used with the current MariaDB. Providing this field implies delegating high availability tasks such as primary failover to MaxScale. #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxScaleRef")] - pub max_scale_ref: Option, + pub max_scale_ref: Option, /// Metrics configures metrics and how to scrape them. #[serde(default, skip_serializing_if = "Option::is_none")] pub metrics: Option, diff --git a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/restores.rs b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/restores.rs index b8033a74c..bca5825d6 100644 --- a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/restores.rs +++ b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/restores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/mariadb.mmontes.io/v1alpha1/restores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/sqljobs.rs b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/sqljobs.rs index dbe082e99..4652ba230 100644 --- a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/sqljobs.rs +++ b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/sqljobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/mariadb.mmontes.io/v1alpha1/sqljobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/users.rs b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/users.rs index e01a7a2b5..d17dbb51c 100644 --- a/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/users.rs +++ b/kube-custom-resources-rs/src/mariadb_mmontes_io/v1alpha1/users.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mariadb-operator/mariadb-operator/mariadb.mmontes.io/v1alpha1/users.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/marin3r_3scale_net/v1alpha1/envoyconfigrevisions.rs b/kube-custom-resources-rs/src/marin3r_3scale_net/v1alpha1/envoyconfigrevisions.rs index c502836bc..e50215432 100644 --- a/kube-custom-resources-rs/src/marin3r_3scale_net/v1alpha1/envoyconfigrevisions.rs +++ b/kube-custom-resources-rs/src/marin3r_3scale_net/v1alpha1/envoyconfigrevisions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale-ops/marin3r/marin3r.3scale.net/v1alpha1/envoyconfigrevisions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/marin3r_3scale_net/v1alpha1/envoyconfigs.rs b/kube-custom-resources-rs/src/marin3r_3scale_net/v1alpha1/envoyconfigs.rs index 40b40fee1..e940a5f23 100644 --- a/kube-custom-resources-rs/src/marin3r_3scale_net/v1alpha1/envoyconfigs.rs +++ b/kube-custom-resources-rs/src/marin3r_3scale_net/v1alpha1/envoyconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale-ops/marin3r/marin3r.3scale.net/v1alpha1/envoyconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -296,7 +297,7 @@ pub struct EnvoyConfigStatus { pub struct EnvoyConfigStatusRevisions { /// Ref is a reference to the EnvoyConfigRevision object that holds the configuration matching the Version field. #[serde(rename = "ref")] - pub r#ref: EnvoyConfigStatusRevisionsRef, + pub r#ref: ObjectReference, /// Version is a hash of the EnvoyResources field pub version: String, } diff --git a/kube-custom-resources-rs/src/mattermost_com/v1alpha1/clusterinstallations.rs b/kube-custom-resources-rs/src/mattermost_com/v1alpha1/clusterinstallations.rs index bd6fc2585..832d3f0a4 100644 --- a/kube-custom-resources-rs/src/mattermost_com/v1alpha1/clusterinstallations.rs +++ b/kube-custom-resources-rs/src/mattermost_com/v1alpha1/clusterinstallations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mattermost/mattermost-operator/mattermost.com/v1alpha1/clusterinstallations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mattermost_com/v1alpha1/mattermostrestoredbs.rs b/kube-custom-resources-rs/src/mattermost_com/v1alpha1/mattermostrestoredbs.rs index 1e8539262..71d28843e 100644 --- a/kube-custom-resources-rs/src/mattermost_com/v1alpha1/mattermostrestoredbs.rs +++ b/kube-custom-resources-rs/src/mattermost_com/v1alpha1/mattermostrestoredbs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mattermost/mattermost-operator/mattermost.com/v1alpha1/mattermostrestoredbs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/acls.rs b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/acls.rs index 939edacaa..c500fbe0a 100644 --- a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/acls.rs +++ b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/acls.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/memorydb-controller/memorydb.services.k8s.aws/v1alpha1/acls.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/clusters.rs b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/clusters.rs index 20c1dbe6d..79bfa5997 100644 --- a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/clusters.rs +++ b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/clusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/memorydb-controller/memorydb.services.k8s.aws/v1alpha1/clusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/parametergroups.rs b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/parametergroups.rs index 8ba509ba1..8c53fccab 100644 --- a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/parametergroups.rs +++ b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/parametergroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/memorydb-controller/memorydb.services.k8s.aws/v1alpha1/parametergroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/snapshots.rs b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/snapshots.rs index 198b8c671..7d0e87e59 100644 --- a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/snapshots.rs +++ b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/snapshots.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/memorydb-controller/memorydb.services.k8s.aws/v1alpha1/snapshots.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/subnetgroups.rs b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/subnetgroups.rs index 13e8fc18e..dd7adb136 100644 --- a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/subnetgroups.rs +++ b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/subnetgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/memorydb-controller/memorydb.services.k8s.aws/v1alpha1/subnetgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/users.rs b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/users.rs index b12a4f719..cd2019b18 100644 --- a/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/users.rs +++ b/kube-custom-resources-rs/src/memorydb_services_k8s_aws/v1alpha1/users.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/memorydb-controller/memorydb.services.k8s.aws/v1alpha1/users.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/compositecontrollers.rs b/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/compositecontrollers.rs index 92ba09186..f1a3ece90 100644 --- a/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/compositecontrollers.rs +++ b/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/compositecontrollers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/metacontroller/metacontroller/metacontroller.k8s.io/v1alpha1/compositecontrollers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/controllerrevisions.rs b/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/controllerrevisions.rs index d056d11b2..646d4ce9c 100644 --- a/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/controllerrevisions.rs +++ b/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/controllerrevisions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/metacontroller/metacontroller/metacontroller.k8s.io/v1alpha1/controllerrevisions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/decoratorcontrollers.rs b/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/decoratorcontrollers.rs index ae26dfd72..c7e151e87 100644 --- a/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/decoratorcontrollers.rs +++ b/kube-custom-resources-rs/src/metacontroller_k8s_io/v1alpha1/decoratorcontrollers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/metacontroller/metacontroller/metacontroller.k8s.io/v1alpha1/decoratorcontrollers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/metal3_io/v1alpha1/bmceventsubscriptions.rs b/kube-custom-resources-rs/src/metal3_io/v1alpha1/bmceventsubscriptions.rs index 56b561325..a21d8c340 100644 --- a/kube-custom-resources-rs/src/metal3_io/v1alpha1/bmceventsubscriptions.rs +++ b/kube-custom-resources-rs/src/metal3_io/v1alpha1/bmceventsubscriptions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/metal3-io/baremetal-operator/metal3.io/v1alpha1/bmceventsubscriptions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/metal3_io/v1alpha1/dataimages.rs b/kube-custom-resources-rs/src/metal3_io/v1alpha1/dataimages.rs index c4874bd9b..cbfb84bdd 100644 --- a/kube-custom-resources-rs/src/metal3_io/v1alpha1/dataimages.rs +++ b/kube-custom-resources-rs/src/metal3_io/v1alpha1/dataimages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/metal3-io/baremetal-operator/metal3.io/v1alpha1/dataimages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/metal3_io/v1alpha1/firmwareschemas.rs b/kube-custom-resources-rs/src/metal3_io/v1alpha1/firmwareschemas.rs index 5856e484d..bb5170ac1 100644 --- a/kube-custom-resources-rs/src/metal3_io/v1alpha1/firmwareschemas.rs +++ b/kube-custom-resources-rs/src/metal3_io/v1alpha1/firmwareschemas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/metal3-io/baremetal-operator/metal3.io/v1alpha1/firmwareschemas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/metal3_io/v1alpha1/hardwaredata.rs b/kube-custom-resources-rs/src/metal3_io/v1alpha1/hardwaredata.rs index 802e5b1eb..ccc8d358d 100644 --- a/kube-custom-resources-rs/src/metal3_io/v1alpha1/hardwaredata.rs +++ b/kube-custom-resources-rs/src/metal3_io/v1alpha1/hardwaredata.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/metal3-io/baremetal-operator/metal3.io/v1alpha1/hardwaredata.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/metal3_io/v1alpha1/hostfirmwarecomponents.rs b/kube-custom-resources-rs/src/metal3_io/v1alpha1/hostfirmwarecomponents.rs index 1c2e4b93e..00026d86e 100644 --- a/kube-custom-resources-rs/src/metal3_io/v1alpha1/hostfirmwarecomponents.rs +++ b/kube-custom-resources-rs/src/metal3_io/v1alpha1/hostfirmwarecomponents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/metal3-io/baremetal-operator/metal3.io/v1alpha1/hostfirmwarecomponents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/metal3_io/v1alpha1/hostfirmwaresettings.rs b/kube-custom-resources-rs/src/metal3_io/v1alpha1/hostfirmwaresettings.rs index 71d5af95a..56c9c2474 100644 --- a/kube-custom-resources-rs/src/metal3_io/v1alpha1/hostfirmwaresettings.rs +++ b/kube-custom-resources-rs/src/metal3_io/v1alpha1/hostfirmwaresettings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/metal3-io/baremetal-operator/metal3.io/v1alpha1/hostfirmwaresettings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/metal3_io/v1alpha1/preprovisioningimages.rs b/kube-custom-resources-rs/src/metal3_io/v1alpha1/preprovisioningimages.rs index ef895f56c..c8d2e71a3 100644 --- a/kube-custom-resources-rs/src/metal3_io/v1alpha1/preprovisioningimages.rs +++ b/kube-custom-resources-rs/src/metal3_io/v1alpha1/preprovisioningimages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/metal3-io/baremetal-operator/metal3.io/v1alpha1/preprovisioningimages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/microcks_github_io/v1alpha1/microcksinstalls.rs b/kube-custom-resources-rs/src/microcks_github_io/v1alpha1/microcksinstalls.rs index 232028c45..282b51770 100644 --- a/kube-custom-resources-rs/src/microcks_github_io/v1alpha1/microcksinstalls.rs +++ b/kube-custom-resources-rs/src/microcks_github_io/v1alpha1/microcksinstalls.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/microcks/microcks-ansible-operator/microcks.github.io/v1alpha1/microcksinstalls.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/minio_min_io/v2/tenants.rs b/kube-custom-resources-rs/src/minio_min_io/v2/tenants.rs index ce3127708..03459f467 100644 --- a/kube-custom-resources-rs/src/minio_min_io/v2/tenants.rs +++ b/kube-custom-resources-rs/src/minio_min_io/v2/tenants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/minio/operator/minio.min.io/v2/tenants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mirrors_kts_studio/v1alpha1/secretmirrors.rs b/kube-custom-resources-rs/src/mirrors_kts_studio/v1alpha1/secretmirrors.rs index 6af7f21f4..88dc8df86 100644 --- a/kube-custom-resources-rs/src/mirrors_kts_studio/v1alpha1/secretmirrors.rs +++ b/kube-custom-resources-rs/src/mirrors_kts_studio/v1alpha1/secretmirrors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ktsstudio/mirrors/mirrors.kts.studio/v1alpha1/secretmirrors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mirrors_kts_studio/v1alpha2/secretmirrors.rs b/kube-custom-resources-rs/src/mirrors_kts_studio/v1alpha2/secretmirrors.rs index 9e0340ae1..ebc8263f3 100644 --- a/kube-custom-resources-rs/src/mirrors_kts_studio/v1alpha2/secretmirrors.rs +++ b/kube-custom-resources-rs/src/mirrors_kts_studio/v1alpha2/secretmirrors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ktsstudio/mirrors/mirrors.kts.studio/v1alpha2/secretmirrors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/model_kubedl_io/v1alpha1/models.rs b/kube-custom-resources-rs/src/model_kubedl_io/v1alpha1/models.rs index 43dd9ee9d..7f6cffe06 100644 --- a/kube-custom-resources-rs/src/model_kubedl_io/v1alpha1/models.rs +++ b/kube-custom-resources-rs/src/model_kubedl_io/v1alpha1/models.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/model.kubedl.io/v1alpha1/models.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/model_kubedl_io/v1alpha1/modelversions.rs b/kube-custom-resources-rs/src/model_kubedl_io/v1alpha1/modelversions.rs index e20d23f81..38b0de706 100644 --- a/kube-custom-resources-rs/src/model_kubedl_io/v1alpha1/modelversions.rs +++ b/kube-custom-resources-rs/src/model_kubedl_io/v1alpha1/modelversions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/model.kubedl.io/v1alpha1/modelversions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/alertmanagers.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/alertmanagers.rs index 261e3be4a..b82bbe77b 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/alertmanagers.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/alertmanagers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/alertmanagers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -1114,11 +1114,29 @@ pub struct AlertmanagerAlertmanagerConfigurationGlobalHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -1247,19 +1265,18 @@ pub struct AlertmanagerAlertmanagerConfigurationGlobalHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -1524,6 +1541,23 @@ pub enum AlertmanagerAlertmanagerConfigurationGlobalHttpConfigOauth2TlsConfigMin Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerAlertmanagerConfigurationGlobalHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerAlertmanagerConfigurationGlobalHttpConfigTlsConfig { diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/podmonitors.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/podmonitors.rs index afcd1bd82..6108efa15 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/podmonitors.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/podmonitors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/podmonitors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -470,19 +470,18 @@ pub struct PodMonitorPodMetricsEndpointsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/probes.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/probes.rs index 057e691d0..16a754bcb 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/probes.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/probes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/probes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -311,19 +311,18 @@ pub struct ProbeOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/prometheuses.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/prometheuses.rs index 76ca66d9f..436305ea1 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/prometheuses.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/prometheuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/prometheuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -5324,7 +5324,7 @@ pub struct PrometheusRemoteRead { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// OAuth2 configuration for the URL. @@ -5337,13 +5337,12 @@ pub struct PrometheusRemoteRead { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -5480,19 +5479,18 @@ pub struct PrometheusRemoteReadOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -6007,7 +6005,7 @@ pub struct PrometheusRemoteWrite { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// OAuth2 configuration for the URL. @@ -6020,13 +6018,12 @@ pub struct PrometheusRemoteWrite { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -6288,19 +6285,18 @@ pub struct PrometheusRemoteWriteOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/prometheusrules.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/prometheusrules.rs index 671f3eb57..fa74c2aa4 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/prometheusrules.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/prometheusrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/prometheusrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/servicemonitors.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/servicemonitors.rs index 7177b21fd..8912a5ad1 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/servicemonitors.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/servicemonitors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/servicemonitors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -466,19 +466,18 @@ pub struct ServiceMonitorEndpointsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/thanosrulers.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/thanosrulers.rs index 5c8b54ed8..fffb9019d 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1/thanosrulers.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1/thanosrulers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1/thanosrulers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -6877,7 +6877,7 @@ pub struct ThanosRulerStatus { /// targeted by this ThanosRuler deployment. #[serde(rename = "availableReplicas")] pub available_replicas: i32, - /// The current state of the Alertmanager object. + /// The current state of the ThanosRuler object. #[serde(default, skip_serializing_if = "Option::is_none")] pub conditions: Option>, /// Represents whether any actions on the underlying managed objects are diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/alertmanagerconfigs.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/alertmanagerconfigs.rs index 5b0c5146b..714200b18 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/alertmanagerconfigs.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/alertmanagerconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/alertmanagerconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -283,11 +283,29 @@ pub struct AlertmanagerConfigReceiversDiscordConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -416,19 +434,18 @@ pub struct AlertmanagerConfigReceiversDiscordConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -693,6 +710,23 @@ pub enum AlertmanagerConfigReceiversDiscordConfigsHttpConfigOauth2TlsConfigMinVe Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversDiscordConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversDiscordConfigsHttpConfigTlsConfig { @@ -1164,11 +1198,29 @@ pub struct AlertmanagerConfigReceiversMsteamsConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -1297,19 +1349,18 @@ pub struct AlertmanagerConfigReceiversMsteamsConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -1574,6 +1625,23 @@ pub enum AlertmanagerConfigReceiversMsteamsConfigsHttpConfigOauth2TlsConfigMinVe Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversMsteamsConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversMsteamsConfigsHttpConfigTlsConfig { @@ -1856,11 +1924,29 @@ pub struct AlertmanagerConfigReceiversOpsgenieConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -1989,19 +2075,18 @@ pub struct AlertmanagerConfigReceiversOpsgenieConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -2266,6 +2351,23 @@ pub enum AlertmanagerConfigReceiversOpsgenieConfigsHttpConfigOauth2TlsConfigMinV Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversOpsgenieConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversOpsgenieConfigsHttpConfigTlsConfig { @@ -2537,11 +2639,29 @@ pub struct AlertmanagerConfigReceiversPagerdutyConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -2670,19 +2790,18 @@ pub struct AlertmanagerConfigReceiversPagerdutyConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -2947,6 +3066,23 @@ pub enum AlertmanagerConfigReceiversPagerdutyConfigsHttpConfigOauth2TlsConfigMin Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversPagerdutyConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversPagerdutyConfigsHttpConfigTlsConfig { @@ -3265,11 +3401,29 @@ pub struct AlertmanagerConfigReceiversPushoverConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -3398,19 +3552,18 @@ pub struct AlertmanagerConfigReceiversPushoverConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -3675,6 +3828,23 @@ pub enum AlertmanagerConfigReceiversPushoverConfigsHttpConfigOauth2TlsConfigMinV Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversPushoverConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversPushoverConfigsHttpConfigTlsConfig { @@ -4029,11 +4199,29 @@ pub struct AlertmanagerConfigReceiversSlackConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -4162,19 +4350,18 @@ pub struct AlertmanagerConfigReceiversSlackConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -4439,6 +4626,23 @@ pub enum AlertmanagerConfigReceiversSlackConfigsHttpConfigOauth2TlsConfigMinVers Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversSlackConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversSlackConfigsHttpConfigTlsConfig { @@ -4662,11 +4866,29 @@ pub struct AlertmanagerConfigReceiversSnsConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -4795,19 +5017,18 @@ pub struct AlertmanagerConfigReceiversSnsConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -5072,6 +5293,23 @@ pub enum AlertmanagerConfigReceiversSnsConfigsHttpConfigOauth2TlsConfigMinVersio Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversSnsConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversSnsConfigsHttpConfigTlsConfig { @@ -5375,11 +5613,29 @@ pub struct AlertmanagerConfigReceiversTelegramConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -5508,19 +5764,18 @@ pub struct AlertmanagerConfigReceiversTelegramConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -5785,6 +6040,23 @@ pub enum AlertmanagerConfigReceiversTelegramConfigsHttpConfigOauth2TlsConfigMinV Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversTelegramConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversTelegramConfigsHttpConfigTlsConfig { @@ -6044,11 +6316,29 @@ pub struct AlertmanagerConfigReceiversVictoropsConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -6177,19 +6467,18 @@ pub struct AlertmanagerConfigReceiversVictoropsConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -6454,6 +6743,23 @@ pub enum AlertmanagerConfigReceiversVictoropsConfigsHttpConfigOauth2TlsConfigMin Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversVictoropsConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversVictoropsConfigsHttpConfigTlsConfig { @@ -6661,11 +6967,29 @@ pub struct AlertmanagerConfigReceiversWebexConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -6794,19 +7118,18 @@ pub struct AlertmanagerConfigReceiversWebexConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -7071,6 +7394,23 @@ pub enum AlertmanagerConfigReceiversWebexConfigsHttpConfigOauth2TlsConfigMinVers Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversWebexConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversWebexConfigsHttpConfigTlsConfig { @@ -7280,11 +7620,29 @@ pub struct AlertmanagerConfigReceiversWebhookConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -7413,19 +7771,18 @@ pub struct AlertmanagerConfigReceiversWebhookConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -7690,6 +8047,23 @@ pub enum AlertmanagerConfigReceiversWebhookConfigsHttpConfigOauth2TlsConfigMinVe Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversWebhookConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversWebhookConfigsHttpConfigTlsConfig { @@ -7949,11 +8323,29 @@ pub struct AlertmanagerConfigReceiversWechatConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -8082,19 +8474,18 @@ pub struct AlertmanagerConfigReceiversWechatConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -8359,6 +8750,23 @@ pub enum AlertmanagerConfigReceiversWechatConfigsHttpConfigOauth2TlsConfigMinVer Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversWechatConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversWechatConfigsHttpConfigTlsConfig { diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/prometheusagents.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/prometheusagents.rs index c1e58a184..fc6461780 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/prometheusagents.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/prometheusagents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/prometheusagents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -4542,7 +4542,7 @@ pub struct PrometheusAgentRemoteWrite { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// OAuth2 configuration for the URL. @@ -4555,13 +4555,12 @@ pub struct PrometheusAgentRemoteWrite { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -4823,19 +4822,18 @@ pub struct PrometheusAgentRemoteWriteOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/scrapeconfigs.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/scrapeconfigs.rs index 22eebf379..d0bb194c6 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/scrapeconfigs.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1alpha1/scrapeconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1alpha1/scrapeconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -123,7 +123,7 @@ pub struct ScrapeConfigSpec { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// NomadSDConfigs defines a list of Nomad service discovery configurations. @@ -144,13 +144,12 @@ pub struct ScrapeConfigSpec { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -387,7 +386,7 @@ pub struct ScrapeConfigConsulSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Node metadata key/value pairs to filter nodes for a given service. @@ -402,13 +401,12 @@ pub struct ScrapeConfigConsulSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -543,19 +541,18 @@ pub struct ScrapeConfigConsulSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -1046,7 +1043,7 @@ pub struct ScrapeConfigDigitalOceanSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth 2.0 configuration. @@ -1059,13 +1056,12 @@ pub struct ScrapeConfigDigitalOceanSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -1132,19 +1128,18 @@ pub struct ScrapeConfigDigitalOceanSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -1665,7 +1660,7 @@ pub struct ScrapeConfigDockerSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth 2.0 configuration. @@ -1678,13 +1673,12 @@ pub struct ScrapeConfigDockerSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -1809,19 +1803,18 @@ pub struct ScrapeConfigDockerSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -2296,7 +2289,7 @@ pub struct ScrapeConfigDockerSwarmSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth 2.0 configuration. @@ -2310,13 +2303,12 @@ pub struct ScrapeConfigDockerSwarmSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -2442,19 +2434,18 @@ pub struct ScrapeConfigDockerSwarmSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -2939,7 +2930,7 @@ pub struct ScrapeConfigEc2SdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// The port to scrape metrics from. If using the public IP address, this must @@ -2949,13 +2940,12 @@ pub struct ScrapeConfigEc2SdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -3226,7 +3216,7 @@ pub struct ScrapeConfigEurekaSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth 2.0 configuration. @@ -3236,13 +3226,12 @@ pub struct ScrapeConfigEurekaSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -3359,19 +3348,18 @@ pub struct ScrapeConfigEurekaSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -3889,7 +3877,7 @@ pub struct ScrapeConfigHetznerSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth 2.0 configuration. @@ -3902,13 +3890,12 @@ pub struct ScrapeConfigHetznerSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -4027,19 +4014,18 @@ pub struct ScrapeConfigHetznerSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -4522,7 +4508,7 @@ pub struct ScrapeConfigHttpSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth 2.0 configuration to authenticate against the target HTTP endpoint. @@ -4532,13 +4518,12 @@ pub struct ScrapeConfigHttpSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -4659,19 +4644,18 @@ pub struct ScrapeConfigHttpSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -5135,7 +5119,7 @@ pub struct ScrapeConfigIonosSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Port to scrape the metrics from. @@ -5144,13 +5128,12 @@ pub struct ScrapeConfigIonosSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -5413,7 +5396,7 @@ pub struct ScrapeConfigKubernetesSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth 2.0 configuration. @@ -5423,13 +5406,12 @@ pub struct ScrapeConfigKubernetesSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -5575,19 +5557,18 @@ pub struct ScrapeConfigKubernetesSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -6097,7 +6078,7 @@ pub struct ScrapeConfigKumaSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth 2.0 configuration. @@ -6107,13 +6088,12 @@ pub struct ScrapeConfigKumaSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -6230,19 +6210,18 @@ pub struct ScrapeConfigKumaSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -6715,7 +6694,7 @@ pub struct ScrapeConfigLightSailSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth2.0 configuration. @@ -6729,13 +6708,12 @@ pub struct ScrapeConfigLightSailSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -6878,19 +6856,18 @@ pub struct ScrapeConfigLightSailSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -7369,7 +7346,7 @@ pub struct ScrapeConfigLinodeSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth 2.0 configuration. @@ -7382,13 +7359,12 @@ pub struct ScrapeConfigLinodeSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -7460,19 +7436,18 @@ pub struct ScrapeConfigLinodeSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -8035,7 +8010,7 @@ pub struct ScrapeConfigNomadSdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth 2.0 configuration. @@ -8045,13 +8020,12 @@ pub struct ScrapeConfigNomadSdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -8173,19 +8147,18 @@ pub struct ScrapeConfigNomadSdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -8649,19 +8622,18 @@ pub struct ScrapeConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -9326,7 +9298,7 @@ pub struct ScrapeConfigPuppetDbsdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// Optional OAuth2.0 configuration. @@ -9339,13 +9311,12 @@ pub struct ScrapeConfigPuppetDbsdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -9467,19 +9438,18 @@ pub struct ScrapeConfigPuppetDbsdConfigsOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -10039,7 +10009,7 @@ pub struct ScrapeConfigScalewaySdConfigs { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// The port to scrape metrics from. @@ -10051,13 +10021,12 @@ pub struct ScrapeConfigScalewaySdConfigs { /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. diff --git a/kube-custom-resources-rs/src/monitoring_coreos_com/v1beta1/alertmanagerconfigs.rs b/kube-custom-resources-rs/src/monitoring_coreos_com/v1beta1/alertmanagerconfigs.rs index cc87789b7..ac608e4c0 100644 --- a/kube-custom-resources-rs/src/monitoring_coreos_com/v1beta1/alertmanagerconfigs.rs +++ b/kube-custom-resources-rs/src/monitoring_coreos_com/v1beta1/alertmanagerconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/prometheus-operator/prometheus-operator/monitoring.coreos.com/v1beta1/alertmanagerconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -222,11 +222,29 @@ pub struct AlertmanagerConfigReceiversDiscordConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -347,19 +365,18 @@ pub struct AlertmanagerConfigReceiversDiscordConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -624,6 +641,23 @@ pub enum AlertmanagerConfigReceiversDiscordConfigsHttpConfigOauth2TlsConfigMinVe Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversDiscordConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversDiscordConfigsHttpConfigTlsConfig { @@ -1079,11 +1113,29 @@ pub struct AlertmanagerConfigReceiversMsteamsConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -1204,19 +1256,18 @@ pub struct AlertmanagerConfigReceiversMsteamsConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -1481,6 +1532,23 @@ pub enum AlertmanagerConfigReceiversMsteamsConfigsHttpConfigOauth2TlsConfigMinVe Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversMsteamsConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversMsteamsConfigsHttpConfigTlsConfig { @@ -1751,11 +1819,29 @@ pub struct AlertmanagerConfigReceiversOpsgenieConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -1876,19 +1962,18 @@ pub struct AlertmanagerConfigReceiversOpsgenieConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -2153,6 +2238,23 @@ pub enum AlertmanagerConfigReceiversOpsgenieConfigsHttpConfigOauth2TlsConfigMinV Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversOpsgenieConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversOpsgenieConfigsHttpConfigTlsConfig { @@ -2440,11 +2542,29 @@ pub struct AlertmanagerConfigReceiversPagerdutyConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -2565,19 +2685,18 @@ pub struct AlertmanagerConfigReceiversPagerdutyConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -2842,6 +2961,23 @@ pub enum AlertmanagerConfigReceiversPagerdutyConfigsHttpConfigOauth2TlsConfigMin Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversPagerdutyConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversPagerdutyConfigsHttpConfigTlsConfig { @@ -3144,11 +3280,29 @@ pub struct AlertmanagerConfigReceiversPushoverConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -3269,19 +3423,18 @@ pub struct AlertmanagerConfigReceiversPushoverConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -3546,6 +3699,23 @@ pub enum AlertmanagerConfigReceiversPushoverConfigsHttpConfigOauth2TlsConfigMinV Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversPushoverConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversPushoverConfigsHttpConfigTlsConfig { @@ -3876,11 +4046,29 @@ pub struct AlertmanagerConfigReceiversSlackConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -4001,19 +4189,18 @@ pub struct AlertmanagerConfigReceiversSlackConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -4278,6 +4465,23 @@ pub enum AlertmanagerConfigReceiversSlackConfigsHttpConfigOauth2TlsConfigMinVers Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversSlackConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversSlackConfigsHttpConfigTlsConfig { @@ -4501,11 +4705,29 @@ pub struct AlertmanagerConfigReceiversSnsConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -4626,19 +4848,18 @@ pub struct AlertmanagerConfigReceiversSnsConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -4903,6 +5124,23 @@ pub enum AlertmanagerConfigReceiversSnsConfigsHttpConfigOauth2TlsConfigMinVersio Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversSnsConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversSnsConfigsHttpConfigTlsConfig { @@ -5198,11 +5436,29 @@ pub struct AlertmanagerConfigReceiversTelegramConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -5323,19 +5579,18 @@ pub struct AlertmanagerConfigReceiversTelegramConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -5600,6 +5855,23 @@ pub enum AlertmanagerConfigReceiversTelegramConfigsHttpConfigOauth2TlsConfigMinV Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversTelegramConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversTelegramConfigsHttpConfigTlsConfig { @@ -5851,11 +6123,29 @@ pub struct AlertmanagerConfigReceiversVictoropsConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -5976,19 +6266,18 @@ pub struct AlertmanagerConfigReceiversVictoropsConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -6253,6 +6542,23 @@ pub enum AlertmanagerConfigReceiversVictoropsConfigsHttpConfigOauth2TlsConfigMin Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversVictoropsConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversVictoropsConfigsHttpConfigTlsConfig { @@ -6459,11 +6765,29 @@ pub struct AlertmanagerConfigReceiversWebexConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -6584,19 +6908,18 @@ pub struct AlertmanagerConfigReceiversWebexConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -6861,6 +7184,23 @@ pub enum AlertmanagerConfigReceiversWebexConfigsHttpConfigOauth2TlsConfigMinVers Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversWebexConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversWebexConfigsHttpConfigTlsConfig { @@ -7070,11 +7410,29 @@ pub struct AlertmanagerConfigReceiversWebhookConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -7195,19 +7553,18 @@ pub struct AlertmanagerConfigReceiversWebhookConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -7472,6 +7829,23 @@ pub enum AlertmanagerConfigReceiversWebhookConfigsHttpConfigOauth2TlsConfigMinVe Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversWebhookConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversWebhookConfigsHttpConfigTlsConfig { @@ -7715,11 +8089,29 @@ pub struct AlertmanagerConfigReceiversWechatConfigsHttpConfig { /// FollowRedirects specifies whether the client should follow HTTP 3xx redirects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "followRedirects")] pub follow_redirects: Option, + /// `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names + /// that should be excluded from proxying. IP and domain names can + /// contain port numbers. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] + pub no_proxy: Option, /// OAuth2 client credentials used to fetch a token for the targets. #[serde(default, skip_serializing_if = "Option::is_none")] pub oauth2: Option, - /// Optional proxy URL. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyURL")] + /// ProxyConnectHeader optionally specifies headers to send to + /// proxies during CONNECT requests. + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] + pub proxy_connect_header: Option>, + /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). + /// + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] + pub proxy_from_environment: Option, + /// `proxyURL` defines the HTTP proxy server to use. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyUrl")] pub proxy_url: Option, /// TLS configuration for the client. #[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsConfig")] @@ -7840,19 +8232,18 @@ pub struct AlertmanagerConfigReceiversWechatConfigsHttpConfigOauth2 { /// that should be excluded from proxying. IP and domain names can /// contain port numbers. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "noProxy")] pub no_proxy: Option, /// ProxyConnectHeader optionally specifies headers to send to /// proxies during CONNECT requests. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyConnectHeader")] pub proxy_connect_header: Option>, /// Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY). - /// If unset, Prometheus uses its default value. /// - /// It requires Prometheus >= v2.43.0. + /// It requires Prometheus >= v2.43.0 or Alertmanager >= 0.25.0. #[serde(default, skip_serializing_if = "Option::is_none", rename = "proxyFromEnvironment")] pub proxy_from_environment: Option, /// `proxyURL` defines the HTTP proxy server to use. @@ -8117,6 +8508,23 @@ pub enum AlertmanagerConfigReceiversWechatConfigsHttpConfigOauth2TlsConfigMinVer Tls13, } +/// SecretKeySelector selects a key of a Secret. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct AlertmanagerConfigReceiversWechatConfigsHttpConfigProxyConnectHeader { + /// The key of the secret to select from. Must be a valid secret key. + pub key: String, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// Specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + /// TLS configuration for the client. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct AlertmanagerConfigReceiversWechatConfigsHttpConfigTlsConfig { diff --git a/kube-custom-resources-rs/src/monocle_monocle_change_metrics_io/v1alpha1/monocles.rs b/kube-custom-resources-rs/src/monocle_monocle_change_metrics_io/v1alpha1/monocles.rs index cd3b00147..1e5b69d5c 100644 --- a/kube-custom-resources-rs/src/monocle_monocle_change_metrics_io/v1alpha1/monocles.rs +++ b/kube-custom-resources-rs/src/monocle_monocle_change_metrics_io/v1alpha1/monocles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/change-metrics/monocle-operator/monocle.monocle.change-metrics.io/v1alpha1/monocles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mq_services_k8s_aws/v1alpha1/brokers.rs b/kube-custom-resources-rs/src/mq_services_k8s_aws/v1alpha1/brokers.rs index b17afc1f7..4a443b18e 100644 --- a/kube-custom-resources-rs/src/mq_services_k8s_aws/v1alpha1/brokers.rs +++ b/kube-custom-resources-rs/src/mq_services_k8s_aws/v1alpha1/brokers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/mq-controller/mq.services.k8s.aws/v1alpha1/brokers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/clusterinfoimports.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/clusterinfoimports.rs index cc8f83a03..dfb332653 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/clusterinfoimports.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/clusterinfoimports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha1/clusterinfoimports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/clustersets.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/clustersets.rs index f41487a24..2743f8b32 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/clustersets.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/clustersets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha1/clustersets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/gateways.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/gateways.rs index 13238071d..5c315b2e8 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/gateways.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/gateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha1/gateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/labelidentities.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/labelidentities.rs index 5b51df617..dd828c22e 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/labelidentities.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/labelidentities.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha1/labelidentities.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/memberclusterannounces.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/memberclusterannounces.rs index 0f2f998ad..bc9af60d4 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/memberclusterannounces.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/memberclusterannounces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha1/memberclusterannounces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/multiclusterconfigs.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/multiclusterconfigs.rs index 5ac777947..03a415645 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/multiclusterconfigs.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/multiclusterconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha1/multiclusterconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/resourceexports.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/resourceexports.rs index 5dfdd5dab..b7cd56b63 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/resourceexports.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/resourceexports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha1/resourceexports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -2088,7 +2089,7 @@ pub struct ResourceExportEndpointsSubsetsAddresses { pub node_name: Option, /// Reference to object providing the endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetRef")] - pub target_ref: Option, + pub target_ref: Option, } /// Reference to object providing the endpoint. @@ -2144,7 +2145,7 @@ pub struct ResourceExportEndpointsSubsetsNotReadyAddresses { pub node_name: Option, /// Reference to object providing the endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetRef")] - pub target_ref: Option, + pub target_ref: Option, } /// Reference to object providing the endpoint. diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/resourceimports.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/resourceimports.rs index 15e23ed2d..16cf000b4 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/resourceimports.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha1/resourceimports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha1/resourceimports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -2089,7 +2090,7 @@ pub struct ResourceImportEndpointsSubsetsAddresses { pub node_name: Option, /// Reference to object providing the endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetRef")] - pub target_ref: Option, + pub target_ref: Option, } /// Reference to object providing the endpoint. @@ -2145,7 +2146,7 @@ pub struct ResourceImportEndpointsSubsetsNotReadyAddresses { pub node_name: Option, /// Reference to object providing the endpoint. #[serde(default, skip_serializing_if = "Option::is_none", rename = "targetRef")] - pub target_ref: Option, + pub target_ref: Option, } /// Reference to object providing the endpoint. diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clusterclaims.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clusterclaims.rs index 2fe42039a..b650b23e9 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clusterclaims.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clusterclaims.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha2/clusterclaims.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clustersets.rs b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clustersets.rs index 0b772629b..fe76bd9ac 100644 --- a/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clustersets.rs +++ b/kube-custom-resources-rs/src/multicluster_crd_antrea_io/v1alpha2/clustersets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/antrea-io/antrea/multicluster.crd.antrea.io/v1alpha2/clustersets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/appliedworks.rs b/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/appliedworks.rs index 9f04ece34..04be57c54 100644 --- a/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/appliedworks.rs +++ b/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/appliedworks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/work-api/multicluster.x-k8s.io/v1alpha1/appliedworks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceexports.rs b/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceexports.rs index a0da55def..6d5c29c24 100644 --- a/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceexports.rs +++ b/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceexports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/mcs-api/multicluster.x-k8s.io/v1alpha1/serviceexports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceimports.rs b/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceimports.rs index 0dee96254..481ce50e2 100644 --- a/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceimports.rs +++ b/kube-custom-resources-rs/src/multicluster_x_k8s_io/v1alpha1/serviceimports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/mcs-api/multicluster.x-k8s.io/v1alpha1/serviceimports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/assign.rs b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/assign.rs index 3f21aa307..d1ef704a1 100644 --- a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/assign.rs +++ b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/assign.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/mutations.gatekeeper.sh/v1/assign.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/assignmetadata.rs b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/assignmetadata.rs index 35de84175..3ae825156 100644 --- a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/assignmetadata.rs +++ b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/assignmetadata.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/mutations.gatekeeper.sh/v1/assignmetadata.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/modifyset.rs b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/modifyset.rs index 5511fc7dd..6918c22a8 100644 --- a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/modifyset.rs +++ b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1/modifyset.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/mutations.gatekeeper.sh/v1/modifyset.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assign.rs b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assign.rs index 5354aad77..a6adff488 100644 --- a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assign.rs +++ b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assign.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/mutations.gatekeeper.sh/v1alpha1/assign.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assignimage.rs b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assignimage.rs index 278ed79cc..0746c8d9c 100644 --- a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assignimage.rs +++ b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assignimage.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/mutations.gatekeeper.sh/v1alpha1/assignimage.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assignmetadata.rs b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assignmetadata.rs index bcef77711..a61e6eaee 100644 --- a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assignmetadata.rs +++ b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/assignmetadata.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/mutations.gatekeeper.sh/v1alpha1/assignmetadata.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/modifyset.rs b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/modifyset.rs index 2df0058c5..71d6a383a 100644 --- a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/modifyset.rs +++ b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1alpha1/modifyset.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/mutations.gatekeeper.sh/v1alpha1/modifyset.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/assign.rs b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/assign.rs index f80e82713..55ae159e6 100644 --- a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/assign.rs +++ b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/assign.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/mutations.gatekeeper.sh/v1beta1/assign.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/assignmetadata.rs b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/assignmetadata.rs index fc18ab75b..0249d9959 100644 --- a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/assignmetadata.rs +++ b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/assignmetadata.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/mutations.gatekeeper.sh/v1beta1/assignmetadata.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/modifyset.rs b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/modifyset.rs index 2f657fd89..f85cc012b 100644 --- a/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/modifyset.rs +++ b/kube-custom-resources-rs/src/mutations_gatekeeper_sh/v1beta1/modifyset.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/mutations.gatekeeper.sh/v1beta1/modifyset.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/nativestor_alauda_io/v1/rawdevices.rs b/kube-custom-resources-rs/src/nativestor_alauda_io/v1/rawdevices.rs index 3e35d5594..51da0d23a 100644 --- a/kube-custom-resources-rs/src/nativestor_alauda_io/v1/rawdevices.rs +++ b/kube-custom-resources-rs/src/nativestor_alauda_io/v1/rawdevices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/alauda/nativestor/nativestor.alauda.io/v1/rawdevices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/netchecks_io/v1/networkassertions.rs b/kube-custom-resources-rs/src/netchecks_io/v1/networkassertions.rs index 77277db69..712b172a9 100644 --- a/kube-custom-resources-rs/src/netchecks_io/v1/networkassertions.rs +++ b/kube-custom-resources-rs/src/netchecks_io/v1/networkassertions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hardbyte/netchecks/netchecks.io/v1/networkassertions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/firewallpolicies.rs b/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/firewallpolicies.rs index 55d8b824c..2ca4e1603 100644 --- a/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/firewallpolicies.rs +++ b/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/firewallpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/networkfirewall-controller/networkfirewall.services.k8s.aws/v1alpha1/firewallpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/firewalls.rs b/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/firewalls.rs index c13beeac3..948c1f03e 100644 --- a/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/firewalls.rs +++ b/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/firewalls.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/networkfirewall-controller/networkfirewall.services.k8s.aws/v1alpha1/firewalls.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/rulegroups.rs b/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/rulegroups.rs index ded041d0b..d8fd20f10 100644 --- a/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/rulegroups.rs +++ b/kube-custom-resources-rs/src/networkfirewall_services_k8s_aws/v1alpha1/rulegroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/networkfirewall-controller/networkfirewall.services.k8s.aws/v1alpha1/rulegroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_gke_io/v1/gcpbackendpolicies.rs b/kube-custom-resources-rs/src/networking_gke_io/v1/gcpbackendpolicies.rs index 5c9e916ef..350b09580 100644 --- a/kube-custom-resources-rs/src/networking_gke_io/v1/gcpbackendpolicies.rs +++ b/kube-custom-resources-rs/src/networking_gke_io/v1/gcpbackendpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/gke-networking-recipes/networking.gke.io/v1/gcpbackendpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_gke_io/v1/gcpgatewaypolicies.rs b/kube-custom-resources-rs/src/networking_gke_io/v1/gcpgatewaypolicies.rs index b7e06796f..d870c7b13 100644 --- a/kube-custom-resources-rs/src/networking_gke_io/v1/gcpgatewaypolicies.rs +++ b/kube-custom-resources-rs/src/networking_gke_io/v1/gcpgatewaypolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/gke-networking-recipes/networking.gke.io/v1/gcpgatewaypolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_gke_io/v1/healthcheckpolicies.rs b/kube-custom-resources-rs/src/networking_gke_io/v1/healthcheckpolicies.rs index 202c3b0a3..78ed28239 100644 --- a/kube-custom-resources-rs/src/networking_gke_io/v1/healthcheckpolicies.rs +++ b/kube-custom-resources-rs/src/networking_gke_io/v1/healthcheckpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/gke-networking-recipes/networking.gke.io/v1/healthcheckpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_gke_io/v1/lbpolicies.rs b/kube-custom-resources-rs/src/networking_gke_io/v1/lbpolicies.rs index 3e0087120..37c92596c 100644 --- a/kube-custom-resources-rs/src/networking_gke_io/v1/lbpolicies.rs +++ b/kube-custom-resources-rs/src/networking_gke_io/v1/lbpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/gke-networking-recipes/networking.gke.io/v1/lbpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_gke_io/v1/managedcertificates.rs b/kube-custom-resources-rs/src/networking_gke_io/v1/managedcertificates.rs index 27d018487..c3baae430 100644 --- a/kube-custom-resources-rs/src/networking_gke_io/v1/managedcertificates.rs +++ b/kube-custom-resources-rs/src/networking_gke_io/v1/managedcertificates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/gke-managed-certs/networking.gke.io/v1/managedcertificates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1/destinationrules.rs b/kube-custom-resources-rs/src/networking_istio_io/v1/destinationrules.rs index 5d2e72b2b..1e23a5f30 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1/destinationrules.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1/destinationrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1/destinationrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1/gateways.rs b/kube-custom-resources-rs/src/networking_istio_io/v1/gateways.rs index 7c5246ad0..5bf9f26c9 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1/gateways.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1/gateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1/gateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1/serviceentries.rs b/kube-custom-resources-rs/src/networking_istio_io/v1/serviceentries.rs index b04b88f0e..a213d9716 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1/serviceentries.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1/serviceentries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1/serviceentries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1/sidecars.rs b/kube-custom-resources-rs/src/networking_istio_io/v1/sidecars.rs index 0f08b1cfb..2cc5262a1 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1/sidecars.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1/sidecars.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1/sidecars.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1/virtualservices.rs b/kube-custom-resources-rs/src/networking_istio_io/v1/virtualservices.rs index 4be357b27..64ace8016 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1/virtualservices.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1/virtualservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1/virtualservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1/workloadentries.rs b/kube-custom-resources-rs/src/networking_istio_io/v1/workloadentries.rs index 0675ce6c0..43582299a 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1/workloadentries.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1/workloadentries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1/workloadentries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1/workloadgroups.rs b/kube-custom-resources-rs/src/networking_istio_io/v1/workloadgroups.rs index 29d0835f8..dd7c79c52 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1/workloadgroups.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1/workloadgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1/workloadgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/destinationrules.rs b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/destinationrules.rs index b0fce8b7d..80ef31799 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/destinationrules.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/destinationrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1alpha3/destinationrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/envoyfilters.rs b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/envoyfilters.rs index 1b3a11add..f76703a05 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/envoyfilters.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/envoyfilters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1alpha3/envoyfilters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/gateways.rs b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/gateways.rs index 5cbbac09c..9336e4c70 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/gateways.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/gateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1alpha3/gateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/serviceentries.rs b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/serviceentries.rs index 47d1a24c3..f0c61abc1 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/serviceentries.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/serviceentries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1alpha3/serviceentries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/sidecars.rs b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/sidecars.rs index ba0abb8e3..3968bfd9a 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/sidecars.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/sidecars.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1alpha3/sidecars.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/virtualservices.rs b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/virtualservices.rs index 355123d44..08f258810 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/virtualservices.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/virtualservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1alpha3/virtualservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/workloadentries.rs b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/workloadentries.rs index a7e8def4c..2e38bbf5d 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/workloadentries.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/workloadentries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1alpha3/workloadentries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/workloadgroups.rs b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/workloadgroups.rs index dfcaf1275..23a41ee17 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/workloadgroups.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1alpha3/workloadgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1alpha3/workloadgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/destinationrules.rs b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/destinationrules.rs index 30711bb77..8375d8160 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/destinationrules.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/destinationrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1beta1/destinationrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/gateways.rs b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/gateways.rs index fa4ec7d04..27ce4f294 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/gateways.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/gateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1beta1/gateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/proxyconfigs.rs b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/proxyconfigs.rs index eefe76214..fc3726bc8 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/proxyconfigs.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/proxyconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1beta1/proxyconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/serviceentries.rs b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/serviceentries.rs index 3910bbbce..6c61214fa 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/serviceentries.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/serviceentries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1beta1/serviceentries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/sidecars.rs b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/sidecars.rs index 7c109c08f..ab0366f64 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/sidecars.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/sidecars.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1beta1/sidecars.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/virtualservices.rs b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/virtualservices.rs index 27b85d6cd..a2021be8d 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/virtualservices.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/virtualservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1beta1/virtualservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/workloadentries.rs b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/workloadentries.rs index d0957f925..00d2e6d00 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/workloadentries.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/workloadentries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1beta1/workloadentries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/workloadgroups.rs b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/workloadgroups.rs index 44883d206..9ff59706e 100644 --- a/kube-custom-resources-rs/src/networking_istio_io/v1beta1/workloadgroups.rs +++ b/kube-custom-resources-rs/src/networking_istio_io/v1beta1/workloadgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/networking.istio.io/v1beta1/workloadgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_k8s_aws/v1alpha1/policyendpoints.rs b/kube-custom-resources-rs/src/networking_k8s_aws/v1alpha1/policyendpoints.rs index 3245fd4c4..9a1f2b7d0 100644 --- a/kube-custom-resources-rs/src/networking_k8s_aws/v1alpha1/policyendpoints.rs +++ b/kube-custom-resources-rs/src/networking_k8s_aws/v1alpha1/policyendpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/amazon-network-policy-controller-k8s/networking.k8s.aws/v1alpha1/policyendpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusteringresses.rs b/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusteringresses.rs index b57a130e4..3ccb22a4b 100644 --- a/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusteringresses.rs +++ b/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusteringresses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/networking.karmada.io/v1alpha1/multiclusteringresses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusterservices.rs b/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusterservices.rs index 30a808cd1..01c5ad69c 100644 --- a/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusterservices.rs +++ b/kube-custom-resources-rs/src/networking_karmada_io/v1alpha1/multiclusterservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/networking.karmada.io/v1alpha1/multiclusterservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/nfd_k8s_sigs_io/v1alpha1/nodefeaturerules.rs b/kube-custom-resources-rs/src/nfd_k8s_sigs_io/v1alpha1/nodefeaturerules.rs index 3bc64d9ad..bf4a3f2ae 100644 --- a/kube-custom-resources-rs/src/nfd_k8s_sigs_io/v1alpha1/nodefeaturerules.rs +++ b/kube-custom-resources-rs/src/nfd_k8s_sigs_io/v1alpha1/nodefeaturerules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusternet/clusternet/nfd.k8s-sigs.io/v1alpha1/nodefeaturerules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/nfd_kubernetes_io/v1/nodefeaturediscoveries.rs b/kube-custom-resources-rs/src/nfd_kubernetes_io/v1/nodefeaturediscoveries.rs index f997d6acb..bcdfccef7 100644 --- a/kube-custom-resources-rs/src/nfd_kubernetes_io/v1/nodefeaturediscoveries.rs +++ b/kube-custom-resources-rs/src/nfd_kubernetes_io/v1/nodefeaturediscoveries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/node-feature-discovery-operator/nfd.kubernetes.io/v1/nodefeaturediscoveries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/nfd_kubernetes_io/v1alpha1/nodefeaturerules.rs b/kube-custom-resources-rs/src/nfd_kubernetes_io/v1alpha1/nodefeaturerules.rs index 3cf160aa2..76eec7786 100644 --- a/kube-custom-resources-rs/src/nfd_kubernetes_io/v1alpha1/nodefeaturerules.rs +++ b/kube-custom-resources-rs/src/nfd_kubernetes_io/v1alpha1/nodefeaturerules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/node-feature-discovery-operator/nfd.kubernetes.io/v1alpha1/nodefeaturerules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/nodeinfo_volcano_sh/v1alpha1/numatopologies.rs b/kube-custom-resources-rs/src/nodeinfo_volcano_sh/v1alpha1/numatopologies.rs index 8518b8ca3..8823f563c 100644 --- a/kube-custom-resources-rs/src/nodeinfo_volcano_sh/v1alpha1/numatopologies.rs +++ b/kube-custom-resources-rs/src/nodeinfo_volcano_sh/v1alpha1/numatopologies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/volcano-sh/volcano/nodeinfo.volcano.sh/v1alpha1/numatopologies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/notebook_kubedl_io/v1alpha1/notebooks.rs b/kube-custom-resources-rs/src/notebook_kubedl_io/v1alpha1/notebooks.rs index 975203183..9766c799d 100644 --- a/kube-custom-resources-rs/src/notebook_kubedl_io/v1alpha1/notebooks.rs +++ b/kube-custom-resources-rs/src/notebook_kubedl_io/v1alpha1/notebooks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/notebook.kubedl.io/v1alpha1/notebooks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1/receivers.rs b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1/receivers.rs index 8a9d88e2d..9a846a5c6 100644 --- a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1/receivers.rs +++ b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1/receivers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1/receivers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/alerts.rs b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/alerts.rs index 343422a0e..659642c7f 100644 --- a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/alerts.rs +++ b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/alerts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/alerts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -53,14 +53,13 @@ pub enum AlertEventSeverity { /// CrossNamespaceObjectReference contains enough information to let you locate the /// typed referenced object at cluster level -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct AlertEventSources { /// API version of the referent #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] pub api_version: Option, /// Kind of the referent - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, + pub kind: AlertEventSourcesKind, /// MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels /// map is equivalent to an element of matchExpressions, whose key field is "key", the /// operator is "In", and the values array contains only "value". The requirements are ANDed. diff --git a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/providers.rs b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/providers.rs index 381eca716..3ebd3a15e 100644 --- a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/providers.rs +++ b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/providers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/providers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/receivers.rs b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/receivers.rs index e4309e040..043bdd57a 100644 --- a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/receivers.rs +++ b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta1/receivers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta1/receivers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -27,8 +27,8 @@ pub struct ReceiverSpec { pub resources: Vec, /// Secret reference containing the token used /// to validate the payload authenticity - #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")] - pub secret_ref: Option, + #[serde(rename = "secretRef")] + pub secret_ref: ReceiverSecretRef, /// This flag tells the controller to suspend subsequent events handling. /// Defaults to false. #[serde(default, skip_serializing_if = "Option::is_none")] @@ -41,14 +41,13 @@ pub struct ReceiverSpec { /// CrossNamespaceObjectReference contains enough information to let you locate the /// typed referenced object at cluster level -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct ReceiverResources { /// API version of the referent #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] pub api_version: Option, /// Kind of the referent - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, + pub kind: ReceiverResourcesKind, /// MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels /// map is equivalent to an element of matchExpressions, whose key field is "key", the /// operator is "In", and the values array contains only "value". The requirements are ANDed. diff --git a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/alerts.rs b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/alerts.rs index 2db113b84..2761694b2 100644 --- a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/alerts.rs +++ b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/alerts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/alerts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/providers.rs b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/providers.rs index 2f25aca42..c4716c60e 100644 --- a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/providers.rs +++ b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/providers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/providers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -27,7 +27,6 @@ pub struct ProviderSpec { /// CertSecretRef specifies the Secret containing /// a PEM-encoded CA certificate (in the `ca.crt` key). /// - /// /// Note: Support for the `caFile` key has /// been deprecated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "certSecretRef")] @@ -63,7 +62,6 @@ pub struct ProviderSpec { /// CertSecretRef specifies the Secret containing /// a PEM-encoded CA certificate (in the `ca.crt` key). /// -/// /// Note: Support for the `caFile` key has /// been deprecated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] diff --git a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/receivers.rs b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/receivers.rs index 11fc77248..8c6396dff 100644 --- a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/receivers.rs +++ b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta2/receivers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta2/receivers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -30,8 +30,8 @@ pub struct ReceiverSpec { pub resources: Vec, /// SecretRef specifies the Secret containing the token used /// to validate the payload authenticity. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")] - pub secret_ref: Option, + #[serde(rename = "secretRef")] + pub secret_ref: ReceiverSecretRef, /// Suspend tells the controller to suspend subsequent /// events handling for this receiver. #[serde(default, skip_serializing_if = "Option::is_none")] diff --git a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta3/alerts.rs b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta3/alerts.rs index f02575ef1..3ea8283f4 100644 --- a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta3/alerts.rs +++ b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta3/alerts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta3/alerts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta3/providers.rs b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta3/providers.rs index 765d86a27..92f10a19c 100644 --- a/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta3/providers.rs +++ b/kube-custom-resources-rs/src/notification_toolkit_fluxcd_io/v1beta3/providers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/notification-controller/notification.toolkit.fluxcd.io/v1beta3/providers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -25,7 +25,6 @@ pub struct ProviderSpec { /// CertSecretRef specifies the Secret containing /// a PEM-encoded CA certificate (in the `ca.crt` key). /// - /// /// Note: Support for the `caFile` key has /// been deprecated. #[serde(default, skip_serializing_if = "Option::is_none", rename = "certSecretRef")] @@ -62,7 +61,6 @@ pub struct ProviderSpec { /// CertSecretRef specifies the Secret containing /// a PEM-encoded CA certificate (in the `ca.crt` key). /// -/// /// Note: Support for the `caFile` key has /// been deprecated. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] diff --git a/kube-custom-resources-rs/src/objectbucket_io/v1alpha1/objectbucketclaims.rs b/kube-custom-resources-rs/src/objectbucket_io/v1alpha1/objectbucketclaims.rs index 1c3e71314..385059036 100644 --- a/kube-custom-resources-rs/src/objectbucket_io/v1alpha1/objectbucketclaims.rs +++ b/kube-custom-resources-rs/src/objectbucket_io/v1alpha1/objectbucketclaims.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/objectbucket.io/v1alpha1/objectbucketclaims.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/objectbucket_io/v1alpha1/objectbuckets.rs b/kube-custom-resources-rs/src/objectbucket_io/v1alpha1/objectbuckets.rs index 481edf85b..e659cb270 100644 --- a/kube-custom-resources-rs/src/objectbucket_io/v1alpha1/objectbuckets.rs +++ b/kube-custom-resources-rs/src/objectbucket_io/v1alpha1/objectbuckets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rook/rook/objectbucket.io/v1alpha1/objectbuckets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/onepassword_com/v1/onepassworditems.rs b/kube-custom-resources-rs/src/onepassword_com/v1/onepassworditems.rs index e5da5ee8e..9a3351a9f 100644 --- a/kube-custom-resources-rs/src/onepassword_com/v1/onepassworditems.rs +++ b/kube-custom-resources-rs/src/onepassword_com/v1/onepassworditems.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/1Password/onepassword-operator/onepassword.com/v1/onepassworditems.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/opensearchservice_services_k8s_aws/v1alpha1/domains.rs b/kube-custom-resources-rs/src/opensearchservice_services_k8s_aws/v1alpha1/domains.rs index 75c374635..3f9089ae1 100644 --- a/kube-custom-resources-rs/src/opensearchservice_services_k8s_aws/v1alpha1/domains.rs +++ b/kube-custom-resources-rs/src/opensearchservice_services_k8s_aws/v1alpha1/domains.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/opensearchservice-controller/opensearchservice.services.k8s.aws/v1alpha1/domains.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/instrumentations.rs b/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/instrumentations.rs index f031eeac9..1fcf2a15d 100644 --- a/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/instrumentations.rs +++ b/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/instrumentations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-telemetry/opentelemetry-operator/opentelemetry.io/v1alpha1/instrumentations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/opampbridges.rs b/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/opampbridges.rs index 3b35011ca..023d6c1d4 100644 --- a/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/opampbridges.rs +++ b/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/opampbridges.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-telemetry/opentelemetry-operator/opentelemetry.io/v1alpha1/opampbridges.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/opentelemetrycollectors.rs b/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/opentelemetrycollectors.rs index b1e62da51..5f4212edd 100644 --- a/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/opentelemetrycollectors.rs +++ b/kube-custom-resources-rs/src/opentelemetry_io/v1alpha1/opentelemetrycollectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-telemetry/opentelemetry-operator/opentelemetry.io/v1alpha1/opentelemetrycollectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/opentelemetry_io/v1beta1/opentelemetrycollectors.rs b/kube-custom-resources-rs/src/opentelemetry_io/v1beta1/opentelemetrycollectors.rs index 876535bd9..eece27c98 100644 --- a/kube-custom-resources-rs/src/opentelemetry_io/v1beta1/opentelemetrycollectors.rs +++ b/kube-custom-resources-rs/src/opentelemetry_io/v1beta1/opentelemetrycollectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-telemetry/opentelemetry-operator/opentelemetry.io/v1beta1/opentelemetrycollectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operations_kubeedge_io/v1alpha1/nodeupgradejobs.rs b/kube-custom-resources-rs/src/operations_kubeedge_io/v1alpha1/nodeupgradejobs.rs index 8c27ae815..fadcff348 100644 --- a/kube-custom-resources-rs/src/operations_kubeedge_io/v1alpha1/nodeupgradejobs.rs +++ b/kube-custom-resources-rs/src/operations_kubeedge_io/v1alpha1/nodeupgradejobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/operations.kubeedge.io/v1alpha1/nodeupgradejobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquacsps.rs b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquacsps.rs index 4da213089..43ecb7e02 100644 --- a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquacsps.rs +++ b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquacsps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aquasecurity/aqua-operator/operator.aquasec.com/v1alpha1/aquacsps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquadatabases.rs b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquadatabases.rs index 8ba50ea62..c105c72c6 100644 --- a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquadatabases.rs +++ b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquadatabases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aquasecurity/aqua-operator/operator.aquasec.com/v1alpha1/aquadatabases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquaenforcers.rs b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquaenforcers.rs index 84b9884d0..8c76ebffa 100644 --- a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquaenforcers.rs +++ b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquaenforcers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aquasecurity/aqua-operator/operator.aquasec.com/v1alpha1/aquaenforcers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquagateways.rs b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquagateways.rs index bd94d05e2..a96225eaa 100644 --- a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquagateways.rs +++ b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquagateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aquasecurity/aqua-operator/operator.aquasec.com/v1alpha1/aquagateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquakubeenforcers.rs b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquakubeenforcers.rs index 7bfa5d868..f43bf2c72 100644 --- a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquakubeenforcers.rs +++ b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquakubeenforcers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aquasecurity/aqua-operator/operator.aquasec.com/v1alpha1/aquakubeenforcers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquascanners.rs b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquascanners.rs index add0e6d62..179f68841 100644 --- a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquascanners.rs +++ b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquascanners.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aquasecurity/aqua-operator/operator.aquasec.com/v1alpha1/aquascanners.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquaservers.rs b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquaservers.rs index a05a18e25..54a8c4220 100644 --- a/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquaservers.rs +++ b/kube-custom-resources-rs/src/operator_aquasec_com/v1alpha1/aquaservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aquasecurity/aqua-operator/operator.aquasec.com/v1alpha1/aquaservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_authorino_kuadrant_io/v1beta1/authorinos.rs b/kube-custom-resources-rs/src/operator_authorino_kuadrant_io/v1beta1/authorinos.rs index 4e07d403f..a519ea4b7 100644 --- a/kube-custom-resources-rs/src/operator_authorino_kuadrant_io/v1beta1/authorinos.rs +++ b/kube-custom-resources-rs/src/operator_authorino_kuadrant_io/v1beta1/authorinos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Kuadrant/authorino-operator/operator.authorino.kuadrant.io/v1beta1/authorinos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/bootstrapproviders.rs b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/bootstrapproviders.rs index e9cbb53ac..b3d881e7b 100644 --- a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/bootstrapproviders.rs +++ b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/bootstrapproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-operator/operator.cluster.x-k8s.io/v1alpha1/bootstrapproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/controlplaneproviders.rs b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/controlplaneproviders.rs index 54ed96129..14b1d8b25 100644 --- a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/controlplaneproviders.rs +++ b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/controlplaneproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-operator/operator.cluster.x-k8s.io/v1alpha1/controlplaneproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/coreproviders.rs b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/coreproviders.rs index 8ceac903b..9eb6790fa 100644 --- a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/coreproviders.rs +++ b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/coreproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-operator/operator.cluster.x-k8s.io/v1alpha1/coreproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/infrastructureproviders.rs b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/infrastructureproviders.rs index 62f517423..af47de05f 100644 --- a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/infrastructureproviders.rs +++ b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha1/infrastructureproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-operator/operator.cluster.x-k8s.io/v1alpha1/infrastructureproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/addonproviders.rs b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/addonproviders.rs index e94e4344a..74ffb885a 100644 --- a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/addonproviders.rs +++ b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/addonproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-operator/operator.cluster.x-k8s.io/v1alpha2/addonproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/bootstrapproviders.rs b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/bootstrapproviders.rs index b60c5e40e..981f5154c 100644 --- a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/bootstrapproviders.rs +++ b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/bootstrapproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-operator/operator.cluster.x-k8s.io/v1alpha2/bootstrapproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/controlplaneproviders.rs b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/controlplaneproviders.rs index 3364cf6ec..973896668 100644 --- a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/controlplaneproviders.rs +++ b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/controlplaneproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-operator/operator.cluster.x-k8s.io/v1alpha2/controlplaneproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/coreproviders.rs b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/coreproviders.rs index bae16e238..d7ee43765 100644 --- a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/coreproviders.rs +++ b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/coreproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-operator/operator.cluster.x-k8s.io/v1alpha2/coreproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/infrastructureproviders.rs b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/infrastructureproviders.rs index ce057f136..21c44a52f 100644 --- a/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/infrastructureproviders.rs +++ b/kube-custom-resources-rs/src/operator_cluster_x_k8s_io/v1alpha2/infrastructureproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api-operator/operator.cluster.x-k8s.io/v1alpha2/infrastructureproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cryostat_io/v1beta1/cryostats.rs b/kube-custom-resources-rs/src/operator_cryostat_io/v1beta1/cryostats.rs index 7ea687cd7..cd28413bd 100644 --- a/kube-custom-resources-rs/src/operator_cryostat_io/v1beta1/cryostats.rs +++ b/kube-custom-resources-rs/src/operator_cryostat_io/v1beta1/cryostats.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cryostatio/cryostat-operator/operator.cryostat.io/v1beta1/cryostats.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_cryostat_io/v1beta2/cryostats.rs b/kube-custom-resources-rs/src/operator_cryostat_io/v1beta2/cryostats.rs index d1dea8331..1e2f56f2c 100644 --- a/kube-custom-resources-rs/src/operator_cryostat_io/v1beta2/cryostats.rs +++ b/kube-custom-resources-rs/src/operator_cryostat_io/v1beta2/cryostats.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cryostatio/cryostat-operator/operator.cryostat.io/v1beta2/cryostats.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/discoveryservicecertificates.rs b/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/discoveryservicecertificates.rs index 395436938..b9366906b 100644 --- a/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/discoveryservicecertificates.rs +++ b/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/discoveryservicecertificates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale-ops/marin3r/operator.marin3r.3scale.net/v1alpha1/discoveryservicecertificates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/discoveryservices.rs b/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/discoveryservices.rs index f0f635ea1..e38010851 100644 --- a/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/discoveryservices.rs +++ b/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/discoveryservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale-ops/marin3r/operator.marin3r.3scale.net/v1alpha1/discoveryservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/envoydeployments.rs b/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/envoydeployments.rs index fce10b360..333a4fef9 100644 --- a/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/envoydeployments.rs +++ b/kube-custom-resources-rs/src/operator_marin3r_3scale_net/v1alpha1/envoydeployments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/3scale-ops/marin3r/operator.marin3r.3scale.net/v1alpha1/envoydeployments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_open_cluster_management_io/v1/clustermanagers.rs b/kube-custom-resources-rs/src/operator_open_cluster_management_io/v1/clustermanagers.rs index 69da439dc..51e10a8bf 100644 --- a/kube-custom-resources-rs/src/operator_open_cluster_management_io/v1/clustermanagers.rs +++ b/kube-custom-resources-rs/src/operator_open_cluster_management_io/v1/clustermanagers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-cluster-management-io/ocm/operator.open-cluster-management.io/v1/clustermanagers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_open_cluster_management_io/v1/klusterlets.rs b/kube-custom-resources-rs/src/operator_open_cluster_management_io/v1/klusterlets.rs index 5e36fcfbf..443d7dbe9 100644 --- a/kube-custom-resources-rs/src/operator_open_cluster_management_io/v1/klusterlets.rs +++ b/kube-custom-resources-rs/src/operator_open_cluster_management_io/v1/klusterlets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-cluster-management-io/ocm/operator.open-cluster-management.io/v1/klusterlets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_shipwright_io/v1alpha1/shipwrightbuilds.rs b/kube-custom-resources-rs/src/operator_shipwright_io/v1alpha1/shipwrightbuilds.rs index 16b7e9889..ef7e39f84 100644 --- a/kube-custom-resources-rs/src/operator_shipwright_io/v1alpha1/shipwrightbuilds.rs +++ b/kube-custom-resources-rs/src/operator_shipwright_io/v1alpha1/shipwrightbuilds.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/shipwright-io/operator/operator.shipwright.io/v1alpha1/shipwrightbuilds.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonchains.rs b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonchains.rs index c90fc33f7..257fb0fe1 100644 --- a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonchains.rs +++ b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonchains.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tektoncd/operator/operator.tekton.dev/v1alpha1/tektonchains.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonconfigs.rs b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonconfigs.rs index cbe0b41f7..945bfdb6a 100644 --- a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonconfigs.rs +++ b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tektoncd/operator/operator.tekton.dev/v1alpha1/tektonconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonhubs.rs b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonhubs.rs index e7f21ac31..2091fc9a1 100644 --- a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonhubs.rs +++ b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonhubs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tektoncd/operator/operator.tekton.dev/v1alpha1/tektonhubs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektoninstallersets.rs b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektoninstallersets.rs index 24cc18886..3bc1c2dda 100644 --- a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektoninstallersets.rs +++ b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektoninstallersets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tektoncd/operator/operator.tekton.dev/v1alpha1/tektoninstallersets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonpipelines.rs b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonpipelines.rs index 916cbb1a4..03afec7f5 100644 --- a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonpipelines.rs +++ b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektonpipelines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tektoncd/operator/operator.tekton.dev/v1alpha1/tektonpipelines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektontriggers.rs b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektontriggers.rs index 62cf038a9..69f8877a7 100644 --- a/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektontriggers.rs +++ b/kube-custom-resources-rs/src/operator_tekton_dev/v1alpha1/tektontriggers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tektoncd/operator/operator.tekton.dev/v1alpha1/tektontriggers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/amazoncloudintegrations.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/amazoncloudintegrations.rs index 86126e4dc..7c4056295 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/amazoncloudintegrations.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/amazoncloudintegrations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/amazoncloudintegrations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/apiservers.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/apiservers.rs index c31197d67..175fd3e4e 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/apiservers.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/apiservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/apiservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -768,6 +768,8 @@ pub enum APIServerApiServerDeploymentSpecTemplateSpecContainersName { CalicoApiserver, #[serde(rename = "tigera-queryserver")] TigeraQueryserver, + #[serde(rename = "calico-l7-admission-controller")] + CalicoL7AdmissionController, } /// Resources allows customization of limits and requests for compute resources such as cpu and memory. diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/applicationlayers.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/applicationlayers.rs index a424d2d84..921b7b7ce 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/applicationlayers.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/applicationlayers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/applicationlayers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -23,7 +23,7 @@ pub struct ApplicationLayerSpec { /// Application Layer Policy controls whether or not ALP enforcement is enabled for the cluster. /// When enabled, NetworkPolicies with HTTP Match rules may be defined to opt-in workloads for traffic enforcement on the application layer. #[serde(default, skip_serializing_if = "Option::is_none", rename = "applicationLayerPolicy")] - pub application_layer_policy: Option, + pub application_layer_policy: Option, /// User-configurable settings for the Envoy proxy. #[serde(default, skip_serializing_if = "Option::is_none")] pub envoy: Option, @@ -33,10 +33,24 @@ pub struct ApplicationLayerSpec { /// Specification for application layer (L7) log collection. #[serde(default, skip_serializing_if = "Option::is_none", rename = "logCollection")] pub log_collection: Option, + /// SidecarInjection controls whether or not sidecar injection is enabled for the cluster. + /// When enabled, pods with the label + /// "applicationlayer.projectcalico.org/sidecar"="true" will have their L7 functionality + /// such as WAF and ALP implemented using an injected sidecar instead of a per-host proxy. + /// The per-host proxy will continue to be used for pods without this label. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "sidecarInjection")] + pub sidecar_injection: Option, /// WebApplicationFirewall controls whether or not ModSecurity enforcement is enabled for the cluster. /// When enabled, Services may opt-in to having ingress traffic examed by ModSecurity. #[serde(default, skip_serializing_if = "Option::is_none", rename = "webApplicationFirewall")] - pub web_application_firewall: Option, + pub web_application_firewall: Option, +} + +/// ApplicationLayerSpec defines the desired state of ApplicationLayer +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum ApplicationLayerApplicationLayerPolicy { + Enabled, + Disabled, } /// User-configurable settings for the Envoy proxy. @@ -201,7 +215,7 @@ pub struct ApplicationLayerLogCollection { /// This setting enables or disable log collection. /// Allowed values are Enabled or Disabled. #[serde(default, skip_serializing_if = "Option::is_none", rename = "collectLogs")] - pub collect_logs: Option, + pub collect_logs: Option, /// Interval in seconds for sending L7 log information for processing. /// Default: 5 sec #[serde(default, skip_serializing_if = "Option::is_none", rename = "logIntervalSeconds")] @@ -214,6 +228,27 @@ pub struct ApplicationLayerLogCollection { pub log_requests_per_interval: Option, } +/// Specification for application layer (L7) log collection. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum ApplicationLayerLogCollectionCollectLogs { + Enabled, + Disabled, +} + +/// ApplicationLayerSpec defines the desired state of ApplicationLayer +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum ApplicationLayerSidecarInjection { + Enabled, + Disabled, +} + +/// ApplicationLayerSpec defines the desired state of ApplicationLayer +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum ApplicationLayerWebApplicationFirewall { + Enabled, + Disabled, +} + /// ApplicationLayerStatus defines the observed state of ApplicationLayer #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ApplicationLayerStatus { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/authentications.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/authentications.rs index 8eea4581c..353b39d2f 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/authentications.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/authentications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/authentications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/compliances.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/compliances.rs index 903db59cd..3e0180d54 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/compliances.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/compliances.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/compliances.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/egressgateways.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/egressgateways.rs index 196942ccb..6c82a3206 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/egressgateways.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/egressgateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/egressgateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/imagesets.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/imagesets.rs index e0e6df3c3..0d51699bf 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/imagesets.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/imagesets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/imagesets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/installations.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/installations.rs index 83f4937eb..c8b3fa03d 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/installations.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/installations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/installations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/intrusiondetections.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/intrusiondetections.rs index e84cfbff1..bda74c0a1 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/intrusiondetections.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/intrusiondetections.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/intrusiondetections.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -27,6 +27,9 @@ pub struct IntrusionDetectionSpec { /// Only DeepPacketInspection is supported for this spec. #[serde(default, skip_serializing_if = "Option::is_none", rename = "componentResources")] pub component_resources: Option>, + /// DeepPacketInspectionDaemonset configures the DPI Daemonset + #[serde(default, skip_serializing_if = "Option::is_none", rename = "deepPacketInspectionDaemonset")] + pub deep_packet_inspection_daemonset: Option, /// IntrusionDetectionControllerDeployment configures the IntrusionDetection Controller Deployment. #[serde(default, skip_serializing_if = "Option::is_none", rename = "intrusionDetectionControllerDeployment")] pub intrusion_detection_controller_deployment: Option, @@ -88,6 +91,90 @@ pub struct IntrusionDetectionComponentResourcesResourceRequirementsClaims { pub name: String, } +/// DeepPacketInspectionDaemonset configures the DPI Daemonset +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct IntrusionDetectionDeepPacketInspectionDaemonset { + /// DPIDaemonsetSpec configures the DPI Daemonset + #[serde(default, skip_serializing_if = "Option::is_none")] + pub spec: Option, +} + +/// DPIDaemonsetSpec configures the DPI Daemonset +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct IntrusionDetectionDeepPacketInspectionDaemonsetSpec { + /// Template specifies DPI Daemonset Template + #[serde(default, skip_serializing_if = "Option::is_none")] + pub template: Option, +} + +/// Template specifies DPI Daemonset Template +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct IntrusionDetectionDeepPacketInspectionDaemonsetSpecTemplate { + /// Spec specifies DPI Daemonset Template Spec + #[serde(default, skip_serializing_if = "Option::is_none")] + pub spec: Option, +} + +/// Spec specifies DPI Daemonset Template Spec +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct IntrusionDetectionDeepPacketInspectionDaemonsetSpecTemplateSpec { + /// List of DPI Daemonset Init containers definitions + #[serde(default, skip_serializing_if = "Option::is_none", rename = "initContainers")] + pub init_containers: Option>, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub struct IntrusionDetectionDeepPacketInspectionDaemonsetSpecTemplateSpecInitContainers { + /// Image name for the init container + pub image: String, + /// Name is an enum that identifies the init container by its name. + pub name: IntrusionDetectionDeepPacketInspectionDaemonsetSpecTemplateSpecInitContainersName, + /// Resources allows customization of limits and requests for compute resources such as cpu and memory. + /// If specified, this overrides the init container's resources. + /// If omitted, the default values will be used for the init container's resources. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub resources: Option, +} + +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum IntrusionDetectionDeepPacketInspectionDaemonsetSpecTemplateSpecInitContainersName { + #[serde(rename = "snort-rules")] + SnortRules, +} + +/// Resources allows customization of limits and requests for compute resources such as cpu and memory. +/// If specified, this overrides the init container's resources. +/// If omitted, the default values will be used for the init container's resources. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct IntrusionDetectionDeepPacketInspectionDaemonsetSpecTemplateSpecInitContainersResources { + /// Claims lists the names of resources, defined in spec.resourceClaims, + /// that are used by this container. + /// This is an alpha field and requires enabling the + /// DynamicResourceAllocation feature gate. + /// This field is immutable. It can only be set for containers. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub claims: Option>, + /// Limits describes the maximum amount of compute resources allowed. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + #[serde(default, skip_serializing_if = "Option::is_none")] + pub limits: Option>, + /// Requests describes the minimum amount of compute resources required. + /// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, + /// otherwise to an implementation-defined value. Requests cannot exceed Limits. + /// More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ + #[serde(default, skip_serializing_if = "Option::is_none")] + pub requests: Option>, +} + +/// ResourceClaim references one entry in PodSpec.ResourceClaims. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct IntrusionDetectionDeepPacketInspectionDaemonsetSpecTemplateSpecInitContainersResourcesClaims { + /// Name must match the name of one entry in pod.spec.resourceClaims of + /// the Pod where this field is used. It makes that resource available + /// inside a container. + pub name: String, +} + /// IntrusionDetectionControllerDeployment configures the IntrusionDetection Controller Deployment. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct IntrusionDetectionIntrusionDetectionControllerDeployment { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/logcollectors.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/logcollectors.rs index f116d1ac7..ef1d3f59d 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/logcollectors.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/logcollectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/logcollectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/logstorages.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/logstorages.rs index e20a0427e..087bcfdb3 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/logstorages.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/logstorages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/logstorages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/managementclusterconnections.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/managementclusterconnections.rs index 18ac638d4..3819b1a28 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/managementclusterconnections.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/managementclusterconnections.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/managementclusterconnections.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/managementclusters.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/managementclusters.rs index 8993b9e4f..6a10e5754 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/managementclusters.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/managementclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/managementclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/managers.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/managers.rs index 2600c6e56..9e7a2e2ed 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/managers.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/managers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/managers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/monitors.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/monitors.rs index 839a41b56..d1293709a 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/monitors.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/monitors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/monitors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/packetcaptures.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/packetcaptures.rs index 92634d8ae..508de128f 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/packetcaptures.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/packetcaptures.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/packetcaptures.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/policyrecommendations.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/policyrecommendations.rs index de88f06f2..0eefe40d7 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/policyrecommendations.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/policyrecommendations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/policyrecommendations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/tenants.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/tenants.rs index fb9cdef3b..4e96fa661 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/tenants.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/tenants.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/tenants.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/tigerastatuses.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/tigerastatuses.rs index 30b5999e7..e95a1c10e 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/tigerastatuses.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/tigerastatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/tigerastatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/tlspassthroughroutes.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/tlspassthroughroutes.rs index 0c8e5d667..3c6f25929 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/tlspassthroughroutes.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/tlspassthroughroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/tlspassthroughroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1/tlsterminatedroutes.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1/tlsterminatedroutes.rs index d66b520c0..0596bab45 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1/tlsterminatedroutes.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1/tlsterminatedroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1/tlsterminatedroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_tigera_io/v1beta1/amazoncloudintegrations.rs b/kube-custom-resources-rs/src/operator_tigera_io/v1beta1/amazoncloudintegrations.rs index 93c677e2c..db0eecbaa 100644 --- a/kube-custom-resources-rs/src/operator_tigera_io/v1beta1/amazoncloudintegrations.rs +++ b/kube-custom-resources-rs/src/operator_tigera_io/v1beta1/amazoncloudintegrations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tigera/operator/operator.tigera.io/v1beta1/amazoncloudintegrations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmalertmanagerconfigs.rs b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmalertmanagerconfigs.rs index 1ad13db18..db9ad18f9 100644 --- a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmalertmanagerconfigs.rs +++ b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmalertmanagerconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmalertmanagerconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmnodescrapes.rs b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmnodescrapes.rs index 6d176ec4c..803a4ead2 100644 --- a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmnodescrapes.rs +++ b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmnodescrapes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmnodescrapes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmpodscrapes.rs b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmpodscrapes.rs index a26a4d5c3..eca592b09 100644 --- a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmpodscrapes.rs +++ b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmpodscrapes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmpodscrapes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmprobes.rs b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmprobes.rs index 2109a45dc..4a3614e4d 100644 --- a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmprobes.rs +++ b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmprobes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmprobes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmrules.rs b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmrules.rs index 3304ae5fc..21c5238e4 100644 --- a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmrules.rs +++ b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmservicescrapes.rs b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmservicescrapes.rs index 2a2f3c9bf..6b70cbbbb 100644 --- a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmservicescrapes.rs +++ b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmservicescrapes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmservicescrapes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmstaticscrapes.rs b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmstaticscrapes.rs index 56b3d9096..e53847e7f 100644 --- a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmstaticscrapes.rs +++ b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmstaticscrapes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmstaticscrapes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmusers.rs b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmusers.rs index d20ec5ec2..a97c12b43 100644 --- a/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmusers.rs +++ b/kube-custom-resources-rs/src/operator_victoriametrics_com/v1beta1/vmusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/VictoriaMetrics/operator/operator.victoriametrics.com/v1beta1/vmusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/backups.rs b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/backups.rs index 47c809b37..47d548829 100644 --- a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/backups.rs +++ b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/elcarro-oracle-operator/oracle.db.anthosapis.com/v1alpha1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/backupschedules.rs b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/backupschedules.rs index 41b081476..3f72a0884 100644 --- a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/backupschedules.rs +++ b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/backupschedules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/elcarro-oracle-operator/oracle.db.anthosapis.com/v1alpha1/backupschedules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/configs.rs b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/configs.rs index d921951f7..bfe776f1c 100644 --- a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/configs.rs +++ b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/configs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/elcarro-oracle-operator/oracle.db.anthosapis.com/v1alpha1/configs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/cronanythings.rs b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/cronanythings.rs index dadf011f6..6517090c1 100644 --- a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/cronanythings.rs +++ b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/cronanythings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/elcarro-oracle-operator/oracle.db.anthosapis.com/v1alpha1/cronanythings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/databases.rs b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/databases.rs index 5e91b0b27..472a7f3cd 100644 --- a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/databases.rs +++ b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/databases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/elcarro-oracle-operator/oracle.db.anthosapis.com/v1alpha1/databases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/exports.rs b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/exports.rs index 3b6082edc..d96a1015b 100644 --- a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/exports.rs +++ b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/exports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/elcarro-oracle-operator/oracle.db.anthosapis.com/v1alpha1/exports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/imports.rs b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/imports.rs index ef81e411d..cd5d2ddd9 100644 --- a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/imports.rs +++ b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/imports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/elcarro-oracle-operator/oracle.db.anthosapis.com/v1alpha1/imports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/pitrs.rs b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/pitrs.rs index ab088796e..eaaa8dd85 100644 --- a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/pitrs.rs +++ b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/pitrs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/elcarro-oracle-operator/oracle.db.anthosapis.com/v1alpha1/pitrs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/releases.rs b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/releases.rs index f13cff792..a89b26f03 100644 --- a/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/releases.rs +++ b/kube-custom-resources-rs/src/oracle_db_anthosapis_com/v1alpha1/releases.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/elcarro-oracle-operator/oracle.db.anthosapis.com/v1alpha1/releases.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/org_eclipse_che/v1/checlusters.rs b/kube-custom-resources-rs/src/org_eclipse_che/v1/checlusters.rs index 6cb6d9804..9943aaf6e 100644 --- a/kube-custom-resources-rs/src/org_eclipse_che/v1/checlusters.rs +++ b/kube-custom-resources-rs/src/org_eclipse_che/v1/checlusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/eclipse-che/che-operator/org.eclipse.che/v1/checlusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/org_eclipse_che/v2/checlusters.rs b/kube-custom-resources-rs/src/org_eclipse_che/v2/checlusters.rs index 581cce7ca..983fa18f9 100644 --- a/kube-custom-resources-rs/src/org_eclipse_che/v2/checlusters.rs +++ b/kube-custom-resources-rs/src/org_eclipse_che/v2/checlusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/eclipse-che/che-operator/org.eclipse.che/v2/checlusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -1067,6 +1067,9 @@ pub struct CheClusterContainerRegistry { /// Development environment default configuration options. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CheClusterDevEnvironments { + /// AllowedSource defines the allowed sources on which workspaces can be started. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "allowedSource")] + pub allowed_source: Option, /// Container build configuration. #[serde(default, skip_serializing_if = "Option::is_none", rename = "containerBuildConfiguration")] pub container_build_configuration: Option, @@ -1187,6 +1190,15 @@ pub struct CheClusterDevEnvironments { pub workspaces_pod_annotations: Option>, } +/// AllowedSource defines the allowed sources on which workspaces can be started. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct CheClusterDevEnvironmentsAllowedSource { + /// The list of approved URLs for starting Cloud Development Environments (CDEs). CDEs can only be + /// initiated from these URLs. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub urls: Option>, +} + /// Container build configuration. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct CheClusterDevEnvironmentsContainerBuildConfiguration { diff --git a/kube-custom-resources-rs/src/organizations_services_k8s_aws/v1alpha1/organizationalunits.rs b/kube-custom-resources-rs/src/organizations_services_k8s_aws/v1alpha1/organizationalunits.rs index 77dede9d5..9001d8062 100644 --- a/kube-custom-resources-rs/src/organizations_services_k8s_aws/v1alpha1/organizationalunits.rs +++ b/kube-custom-resources-rs/src/organizations_services_k8s_aws/v1alpha1/organizationalunits.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/organizations-controller/organizations.services.k8s.aws/v1alpha1/organizationalunits.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgbackups.rs b/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgbackups.rs index 7eb8e121f..f1e23ced9 100644 --- a/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgbackups.rs +++ b/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-postgresql-operator/pgv2.percona.com/v2/perconapgbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgclusters.rs b/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgclusters.rs index 0f65cf944..38ebb4c0b 100644 --- a/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgclusters.rs +++ b/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-postgresql-operator/pgv2.percona.com/v2/perconapgclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -10920,7 +10920,7 @@ pub enum PerconaPGClusterPatroniSwitchoverType { } /// The specification of PMM sidecars. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub struct PerconaPGClusterPmm { /// SecurityContext holds security configuration that will be applied to a container. /// Some fields are present in both SecurityContext and PodSecurityContext. When both @@ -10934,6 +10934,8 @@ pub struct PerconaPGClusterPmm { /// More info: https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy #[serde(default, skip_serializing_if = "Option::is_none", rename = "imagePullPolicy")] pub image_pull_policy: Option, + #[serde(rename = "querySource")] + pub query_source: PerconaPGClusterPmmQuerySource, /// Compute resources of a PMM container. #[serde(default, skip_serializing_if = "Option::is_none")] pub resources: Option, @@ -11141,6 +11143,15 @@ pub enum PerconaPGClusterPmmImagePullPolicy { IfNotPresent, } +/// The specification of PMM sidecars. +#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] +pub enum PerconaPGClusterPmmQuerySource { + #[serde(rename = "pgstatmonitor")] + Pgstatmonitor, + #[serde(rename = "pgstatstatements")] + Pgstatstatements, +} + /// Compute resources of a PMM container. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PerconaPGClusterPmmResources { @@ -14050,6 +14061,12 @@ pub struct PerconaPGClusterSecrets { /// MUST be provided and the ca.crt provided must be the same. #[serde(default, skip_serializing_if = "Option::is_none", rename = "customReplicationTLSSecret")] pub custom_replication_tls_secret: Option, + /// The secret containing the root CA certificate and key for + /// secure connections to the PostgreSQL server. It will need to contain the + /// CA TLS certificate and CA TLS key with the data keys set to + /// root.crt and root.key, respectively. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "customRootCATLSSecret")] + pub custom_root_catls_secret: Option, /// The secret containing the Certificates and Keys to encrypt PostgreSQL /// traffic will need to contain the server TLS certificate, TLS key and the /// Certificate Authority certificate with the data keys set to tls.crt, @@ -14112,6 +14129,53 @@ pub struct PerconaPGClusterSecretsCustomReplicationTlsSecretItems { pub path: String, } +/// The secret containing the root CA certificate and key for +/// secure connections to the PostgreSQL server. It will need to contain the +/// CA TLS certificate and CA TLS key with the data keys set to +/// root.crt and root.key, respectively. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PerconaPGClusterSecretsCustomRootCatlsSecret { + /// items if unspecified, each key-value pair in the Data field of the referenced + /// Secret will be projected into the volume as a file whose name is the + /// key and content is the value. If specified, the listed keys will be + /// projected into the specified paths, and unlisted keys will not be + /// present. If a key is specified which is not present in the Secret, + /// the volume setup will error unless it is marked optional. Paths must be + /// relative and may not contain the '..' path or start with '..'. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub items: Option>, + /// Name of the referent. + /// This field is effectively required, but due to backwards compatibility is + /// allowed to be empty. Instances of this type with an empty value here are + /// almost certainly wrong. + /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + #[serde(default, skip_serializing_if = "Option::is_none")] + pub name: Option, + /// optional field specify whether the Secret or its key must be defined + #[serde(default, skip_serializing_if = "Option::is_none")] + pub optional: Option, +} + +/// Maps a string key to a path within a volume. +#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] +pub struct PerconaPGClusterSecretsCustomRootCatlsSecretItems { + /// key is the key to project. + pub key: String, + /// mode is Optional: mode bits used to set permissions on this file. + /// Must be an octal value between 0000 and 0777 or a decimal value between 0 and 511. + /// YAML accepts both octal and decimal values, JSON requires decimal values for mode bits. + /// If not specified, the volume defaultMode will be used. + /// This might be in conflict with other options that affect the file + /// mode, like fsGroup, and the result can be other mode bits set. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub mode: Option, + /// path is the relative path of the file to map the key to. + /// May not be an absolute path. + /// May not contain the path element '..'. + /// May not start with the string '..'. + pub path: String, +} + /// The secret containing the Certificates and Keys to encrypt PostgreSQL /// traffic will need to contain the server TLS certificate, TLS key and the /// Certificate Authority certificate with the data keys set to tls.crt, diff --git a/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgrestores.rs b/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgrestores.rs index 901c1f418..27ba439e1 100644 --- a/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgrestores.rs +++ b/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgrestores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-postgresql-operator/pgv2.percona.com/v2/perconapgrestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgupgrades.rs b/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgupgrades.rs index adc3c5ef8..c27340eab 100644 --- a/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgupgrades.rs +++ b/kube-custom-resources-rs/src/pgv2_percona_com/v2/perconapgupgrades.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-postgresql-operator/pgv2.percona.com/v2/perconapgupgrades.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pipes_services_k8s_aws/v1alpha1/pipes.rs b/kube-custom-resources-rs/src/pipes_services_k8s_aws/v1alpha1/pipes.rs index 458beef6a..8db320897 100644 --- a/kube-custom-resources-rs/src/pipes_services_k8s_aws/v1alpha1/pipes.rs +++ b/kube-custom-resources-rs/src/pipes_services_k8s_aws/v1alpha1/pipes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/pipes-controller/pipes.services.k8s.aws/v1alpha1/pipes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pkg_crossplane_io/v1/configurationrevisions.rs b/kube-custom-resources-rs/src/pkg_crossplane_io/v1/configurationrevisions.rs index 68de43edd..3b514d2de 100644 --- a/kube-custom-resources-rs/src/pkg_crossplane_io/v1/configurationrevisions.rs +++ b/kube-custom-resources-rs/src/pkg_crossplane_io/v1/configurationrevisions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/crossplane/crossplane/pkg.crossplane.io/v1/configurationrevisions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pkg_crossplane_io/v1/configurations.rs b/kube-custom-resources-rs/src/pkg_crossplane_io/v1/configurations.rs index 945cb74b4..b7a441c3d 100644 --- a/kube-custom-resources-rs/src/pkg_crossplane_io/v1/configurations.rs +++ b/kube-custom-resources-rs/src/pkg_crossplane_io/v1/configurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/crossplane/crossplane/pkg.crossplane.io/v1/configurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pkg_crossplane_io/v1/providerrevisions.rs b/kube-custom-resources-rs/src/pkg_crossplane_io/v1/providerrevisions.rs index c638fc040..862c58f25 100644 --- a/kube-custom-resources-rs/src/pkg_crossplane_io/v1/providerrevisions.rs +++ b/kube-custom-resources-rs/src/pkg_crossplane_io/v1/providerrevisions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/crossplane/crossplane/pkg.crossplane.io/v1/providerrevisions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pkg_crossplane_io/v1/providers.rs b/kube-custom-resources-rs/src/pkg_crossplane_io/v1/providers.rs index 2bb7fee4d..3ecc99fa4 100644 --- a/kube-custom-resources-rs/src/pkg_crossplane_io/v1/providers.rs +++ b/kube-custom-resources-rs/src/pkg_crossplane_io/v1/providers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/crossplane/crossplane/pkg.crossplane.io/v1/providers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pkg_crossplane_io/v1alpha1/controllerconfigs.rs b/kube-custom-resources-rs/src/pkg_crossplane_io/v1alpha1/controllerconfigs.rs index 2a05b5349..dd4b5b6cb 100644 --- a/kube-custom-resources-rs/src/pkg_crossplane_io/v1alpha1/controllerconfigs.rs +++ b/kube-custom-resources-rs/src/pkg_crossplane_io/v1alpha1/controllerconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/crossplane/crossplane/pkg.crossplane.io/v1alpha1/controllerconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pkg_crossplane_io/v1beta1/locks.rs b/kube-custom-resources-rs/src/pkg_crossplane_io/v1beta1/locks.rs index 2c835dbec..bb2c74417 100644 --- a/kube-custom-resources-rs/src/pkg_crossplane_io/v1beta1/locks.rs +++ b/kube-custom-resources-rs/src/pkg_crossplane_io/v1beta1/locks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/crossplane/crossplane/pkg.crossplane.io/v1beta1/locks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/policy_clusterpedia_io/v1alpha1/clusterimportpolicies.rs b/kube-custom-resources-rs/src/policy_clusterpedia_io/v1alpha1/clusterimportpolicies.rs index 38daa1602..6256fe059 100644 --- a/kube-custom-resources-rs/src/policy_clusterpedia_io/v1alpha1/clusterimportpolicies.rs +++ b/kube-custom-resources-rs/src/policy_clusterpedia_io/v1alpha1/clusterimportpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusterpedia-io/clusterpedia/policy.clusterpedia.io/v1alpha1/clusterimportpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/policy_clusterpedia_io/v1alpha1/pediaclusterlifecycles.rs b/kube-custom-resources-rs/src/policy_clusterpedia_io/v1alpha1/pediaclusterlifecycles.rs index b400791a6..12497b5a8 100644 --- a/kube-custom-resources-rs/src/policy_clusterpedia_io/v1alpha1/pediaclusterlifecycles.rs +++ b/kube-custom-resources-rs/src/policy_clusterpedia_io/v1alpha1/pediaclusterlifecycles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/clusterpedia-io/clusterpedia/policy.clusterpedia.io/v1alpha1/pediaclusterlifecycles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/clusteroverridepolicies.rs b/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/clusteroverridepolicies.rs index 0c3b33bc7..d93e6154d 100644 --- a/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/clusteroverridepolicies.rs +++ b/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/clusteroverridepolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/policy.karmada.io/v1alpha1/clusteroverridepolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/clusterpropagationpolicies.rs b/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/clusterpropagationpolicies.rs index 81e185b75..9204030ec 100644 --- a/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/clusterpropagationpolicies.rs +++ b/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/clusterpropagationpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/policy.karmada.io/v1alpha1/clusterpropagationpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/federatedresourcequotas.rs b/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/federatedresourcequotas.rs index b8e9f823c..2bd501d5a 100644 --- a/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/federatedresourcequotas.rs +++ b/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/federatedresourcequotas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/policy.karmada.io/v1alpha1/federatedresourcequotas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/overridepolicies.rs b/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/overridepolicies.rs index 20c05ed97..e97ad1268 100644 --- a/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/overridepolicies.rs +++ b/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/overridepolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/policy.karmada.io/v1alpha1/overridepolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/propagationpolicies.rs b/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/propagationpolicies.rs index 4430ca281..38c4f5978 100644 --- a/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/propagationpolicies.rs +++ b/kube-custom-resources-rs/src/policy_karmada_io/v1alpha1/propagationpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/policy.karmada.io/v1alpha1/propagationpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/policy_kubeedge_io/v1alpha1/serviceaccountaccesses.rs b/kube-custom-resources-rs/src/policy_kubeedge_io/v1alpha1/serviceaccountaccesses.rs index f2a2c30c4..0ed88e262 100644 --- a/kube-custom-resources-rs/src/policy_kubeedge_io/v1alpha1/serviceaccountaccesses.rs +++ b/kube-custom-resources-rs/src/policy_kubeedge_io/v1alpha1/serviceaccountaccesses.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/policy.kubeedge.io/v1alpha1/serviceaccountaccesses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -237,7 +238,7 @@ pub struct ServiceAccountAccessServiceAccount { pub metadata: Option, /// Secrets is a list of the secrets in the same namespace that pods running using this ServiceAccount are allowed to use. Pods are only limited to this list if this service account has a "kubernetes.io/enforce-mountable-secrets" annotation set to "true". This field should not be used to find auto-generated service account token secrets for use outside of pods. Instead, tokens can be requested directly using the TokenRequest API, or service account token secrets can be manually created. More info: https://kubernetes.io/docs/concepts/configuration/secret #[serde(default, skip_serializing_if = "Option::is_none")] - pub secrets: Option>, + pub secrets: Option>, } /// LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. @@ -263,33 +264,6 @@ pub struct ServiceAccountAccessServiceAccountMetadata { pub namespace: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ServiceAccountAccessServiceAccountSecrets { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// Status represents the node list which store the rules. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct ServiceAccountAccessStatus { diff --git a/kube-custom-resources-rs/src/policy_networking_k8s_io/v1alpha1/adminnetworkpolicies.rs b/kube-custom-resources-rs/src/policy_networking_k8s_io/v1alpha1/adminnetworkpolicies.rs index 37bcf05d3..1256fc958 100644 --- a/kube-custom-resources-rs/src/policy_networking_k8s_io/v1alpha1/adminnetworkpolicies.rs +++ b/kube-custom-resources-rs/src/policy_networking_k8s_io/v1alpha1/adminnetworkpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/network-policy-api/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/policy_networking_k8s_io/v1alpha1/baselineadminnetworkpolicies.rs b/kube-custom-resources-rs/src/policy_networking_k8s_io/v1alpha1/baselineadminnetworkpolicies.rs index e132772bc..bcddaaea7 100644 --- a/kube-custom-resources-rs/src/policy_networking_k8s_io/v1alpha1/baselineadminnetworkpolicies.rs +++ b/kube-custom-resources-rs/src/policy_networking_k8s_io/v1alpha1/baselineadminnetworkpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/network-policy-api/policy.networking.k8s.io/v1alpha1/baselineadminnetworkpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/pgadmins.rs b/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/pgadmins.rs index 7dfe29ee8..b67cd0553 100644 --- a/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/pgadmins.rs +++ b/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/pgadmins.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/pgadmins.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/pgupgrades.rs b/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/pgupgrades.rs index 69da268c7..4b6354cd9 100644 --- a/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/pgupgrades.rs +++ b/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/pgupgrades.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/pgupgrades.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/postgresclusters.rs b/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/postgresclusters.rs index 4c132f354..5076a0458 100644 --- a/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/postgresclusters.rs +++ b/kube-custom-resources-rs/src/postgres_operator_crunchydata_com/v1beta1/postgresclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/CrunchyData/postgres-operator/postgres-operator.crunchydata.com/v1beta1/postgresclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/backups.rs b/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/backups.rs index 07df46569..5eef23794 100644 --- a/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/backups.rs +++ b/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cloudnative-pg/cloudnative-pg/postgresql.cnpg.io/v1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/poolers.rs b/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/poolers.rs index 2ff988ec9..a113b7ba2 100644 --- a/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/poolers.rs +++ b/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/poolers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cloudnative-pg/cloudnative-pg/postgresql.cnpg.io/v1/poolers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/scheduledbackups.rs b/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/scheduledbackups.rs index 485555c92..43eeee33a 100644 --- a/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/scheduledbackups.rs +++ b/kube-custom-resources-rs/src/postgresql_cnpg_io/v1/scheduledbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cloudnative-pg/cloudnative-pg/postgresql.cnpg.io/v1/scheduledbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/projectcontour_io/v1/httpproxies.rs b/kube-custom-resources-rs/src/projectcontour_io/v1/httpproxies.rs index fb52a3ad5..8fdea3747 100644 --- a/kube-custom-resources-rs/src/projectcontour_io/v1/httpproxies.rs +++ b/kube-custom-resources-rs/src/projectcontour_io/v1/httpproxies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcontour/contour/projectcontour.io/v1/httpproxies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/projectcontour_io/v1/tlscertificatedelegations.rs b/kube-custom-resources-rs/src/projectcontour_io/v1/tlscertificatedelegations.rs index 32a540808..785ba6219 100644 --- a/kube-custom-resources-rs/src/projectcontour_io/v1/tlscertificatedelegations.rs +++ b/kube-custom-resources-rs/src/projectcontour_io/v1/tlscertificatedelegations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcontour/contour/projectcontour.io/v1/tlscertificatedelegations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/contourconfigurations.rs b/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/contourconfigurations.rs index a854ce864..81459f57e 100644 --- a/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/contourconfigurations.rs +++ b/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/contourconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcontour/contour/projectcontour.io/v1alpha1/contourconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/contourdeployments.rs b/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/contourdeployments.rs index 20761f828..b756e07b1 100644 --- a/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/contourdeployments.rs +++ b/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/contourdeployments.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcontour/contour/projectcontour.io/v1alpha1/contourdeployments.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/extensionservices.rs b/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/extensionservices.rs index 66daf0085..cc70d85b5 100644 --- a/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/extensionservices.rs +++ b/kube-custom-resources-rs/src/projectcontour_io/v1alpha1/extensionservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/projectcontour/contour/projectcontour.io/v1alpha1/extensionservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/alertmanagerdefinitions.rs b/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/alertmanagerdefinitions.rs index 09b15233c..6d28191ae 100644 --- a/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/alertmanagerdefinitions.rs +++ b/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/alertmanagerdefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/prometheusservice-controller/prometheusservice.services.k8s.aws/v1alpha1/alertmanagerdefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/loggingconfigurations.rs b/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/loggingconfigurations.rs index 1b0ef23c0..b7c184467 100644 --- a/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/loggingconfigurations.rs +++ b/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/loggingconfigurations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/prometheusservice-controller/prometheusservice.services.k8s.aws/v1alpha1/loggingconfigurations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/rulegroupsnamespaces.rs b/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/rulegroupsnamespaces.rs index a79917026..36315aa6e 100644 --- a/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/rulegroupsnamespaces.rs +++ b/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/rulegroupsnamespaces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/prometheusservice-controller/prometheusservice.services.k8s.aws/v1alpha1/rulegroupsnamespaces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/workspaces.rs b/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/workspaces.rs index 880e55aad..446e95b2a 100644 --- a/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/workspaces.rs +++ b/kube-custom-resources-rs/src/prometheusservice_services_k8s_aws/v1alpha1/workspaces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/prometheusservice-controller/prometheusservice.services.k8s.aws/v1alpha1/workspaces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqlbackups.rs b/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqlbackups.rs index 1bbc0ddc2..80ac46177 100644 --- a/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqlbackups.rs +++ b/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqlbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-server-mysql-operator/ps.percona.com/v1alpha1/perconaservermysqlbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqlrestores.rs b/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqlrestores.rs index 687692e84..0994dcb28 100644 --- a/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqlrestores.rs +++ b/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqlrestores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-server-mysql-operator/ps.percona.com/v1alpha1/perconaservermysqlrestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqls.rs b/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqls.rs index df764ee7f..3f9ccabb1 100644 --- a/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqls.rs +++ b/kube-custom-resources-rs/src/ps_percona_com/v1alpha1/perconaservermysqls.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-server-mysql-operator/ps.percona.com/v1alpha1/perconaservermysqls.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/psmdb_percona_com/v1/perconaservermongodbbackups.rs b/kube-custom-resources-rs/src/psmdb_percona_com/v1/perconaservermongodbbackups.rs index e32025977..841b14f3a 100644 --- a/kube-custom-resources-rs/src/psmdb_percona_com/v1/perconaservermongodbbackups.rs +++ b/kube-custom-resources-rs/src/psmdb_percona_com/v1/perconaservermongodbbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-server-mongodb-operator/psmdb.percona.com/v1/perconaservermongodbbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/psmdb_percona_com/v1/perconaservermongodbrestores.rs b/kube-custom-resources-rs/src/psmdb_percona_com/v1/perconaservermongodbrestores.rs index 476be6bbe..b665bdac5 100644 --- a/kube-custom-resources-rs/src/psmdb_percona_com/v1/perconaservermongodbrestores.rs +++ b/kube-custom-resources-rs/src/psmdb_percona_com/v1/perconaservermongodbrestores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-server-mongodb-operator/psmdb.percona.com/v1/perconaservermongodbrestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ptp_openshift_io/v1/nodeptpdevices.rs b/kube-custom-resources-rs/src/ptp_openshift_io/v1/nodeptpdevices.rs index 34d628508..2da101cf2 100644 --- a/kube-custom-resources-rs/src/ptp_openshift_io/v1/nodeptpdevices.rs +++ b/kube-custom-resources-rs/src/ptp_openshift_io/v1/nodeptpdevices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/ptp-operator/ptp.openshift.io/v1/nodeptpdevices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusterbackups.rs b/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusterbackups.rs index 1cb45088a..36f602aa0 100644 --- a/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusterbackups.rs +++ b/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusterbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-xtradb-cluster-operator/pxc.percona.com/v1/perconaxtradbclusterbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusterrestores.rs b/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusterrestores.rs index 433303c5c..5344d6d85 100644 --- a/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusterrestores.rs +++ b/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusterrestores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-xtradb-cluster-operator/pxc.percona.com/v1/perconaxtradbclusterrestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusters.rs b/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusters.rs index f872890f1..d5ca19b11 100644 --- a/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusters.rs +++ b/kube-custom-resources-rs/src/pxc_percona_com/v1/perconaxtradbclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/percona/percona-xtradb-cluster-operator/pxc.percona.com/v1/perconaxtradbclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/quay_redhat_com/v1/quayregistries.rs b/kube-custom-resources-rs/src/quay_redhat_com/v1/quayregistries.rs index cde310a21..4bff43b72 100644 --- a/kube-custom-resources-rs/src/quay_redhat_com/v1/quayregistries.rs +++ b/kube-custom-resources-rs/src/quay_redhat_com/v1/quayregistries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/quay/quay-operator/quay.redhat.com/v1/quayregistries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/quota_codeflare_dev/v1alpha1/quotasubtrees.rs b/kube-custom-resources-rs/src/quota_codeflare_dev/v1alpha1/quotasubtrees.rs index 35c159eac..b065c9973 100644 --- a/kube-custom-resources-rs/src/quota_codeflare_dev/v1alpha1/quotasubtrees.rs +++ b/kube-custom-resources-rs/src/quota_codeflare_dev/v1alpha1/quotasubtrees.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/project-codeflare/codeflare-operator/quota.codeflare.dev/v1alpha1/quotasubtrees.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ray_io/v1/rayclusters.rs b/kube-custom-resources-rs/src/ray_io/v1/rayclusters.rs index 8da7b5f11..1465b6264 100644 --- a/kube-custom-resources-rs/src/ray_io/v1/rayclusters.rs +++ b/kube-custom-resources-rs/src/ray_io/v1/rayclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ray-project/kuberay/ray.io/v1/rayclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ray_io/v1/rayjobs.rs b/kube-custom-resources-rs/src/ray_io/v1/rayjobs.rs index bc8cdd05d..fbdaea1f5 100644 --- a/kube-custom-resources-rs/src/ray_io/v1/rayjobs.rs +++ b/kube-custom-resources-rs/src/ray_io/v1/rayjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ray-project/kuberay/ray.io/v1/rayjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ray_io/v1/rayservices.rs b/kube-custom-resources-rs/src/ray_io/v1/rayservices.rs index e6bb9fda2..797df574e 100644 --- a/kube-custom-resources-rs/src/ray_io/v1/rayservices.rs +++ b/kube-custom-resources-rs/src/ray_io/v1/rayservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ray-project/kuberay/ray.io/v1/rayservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayclusters.rs b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayclusters.rs index 690adc192..52ac0e052 100644 --- a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayclusters.rs +++ b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayjobs.rs b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayjobs.rs index a21fe7f9f..8827400f5 100644 --- a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayjobs.rs +++ b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayservices.rs b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayservices.rs index b99eba841..8b4024224 100644 --- a/kube-custom-resources-rs/src/ray_io/v1alpha1/rayservices.rs +++ b/kube-custom-resources-rs/src/ray_io/v1alpha1/rayservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/ray-project/kuberay/ray.io/v1alpha1/rayservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rbacmanager_reactiveops_io/v1beta1/rbacdefinitions.rs b/kube-custom-resources-rs/src/rbacmanager_reactiveops_io/v1beta1/rbacdefinitions.rs index 95eec1073..eeba71f67 100644 --- a/kube-custom-resources-rs/src/rbacmanager_reactiveops_io/v1beta1/rbacdefinitions.rs +++ b/kube-custom-resources-rs/src/rbacmanager_reactiveops_io/v1beta1/rbacdefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/FairwindsOps/rbac-manager/rbacmanager.reactiveops.io/v1beta1/rbacdefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rc_app_stacks/v1/runtimecomponents.rs b/kube-custom-resources-rs/src/rc_app_stacks/v1/runtimecomponents.rs index f49c678e2..5a1677a8e 100644 --- a/kube-custom-resources-rs/src/rc_app_stacks/v1/runtimecomponents.rs +++ b/kube-custom-resources-rs/src/rc_app_stacks/v1/runtimecomponents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/application-stacks/runtime-component-operator/rc.app.stacks/v1/runtimecomponents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rc_app_stacks/v1/runtimeoperations.rs b/kube-custom-resources-rs/src/rc_app_stacks/v1/runtimeoperations.rs index e3a26a18c..026958bac 100644 --- a/kube-custom-resources-rs/src/rc_app_stacks/v1/runtimeoperations.rs +++ b/kube-custom-resources-rs/src/rc_app_stacks/v1/runtimeoperations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/application-stacks/runtime-component-operator/rc.app.stacks/v1/runtimeoperations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rc_app_stacks/v1beta2/runtimecomponents.rs b/kube-custom-resources-rs/src/rc_app_stacks/v1beta2/runtimecomponents.rs index fa215c8df..5ecdcea1f 100644 --- a/kube-custom-resources-rs/src/rc_app_stacks/v1beta2/runtimecomponents.rs +++ b/kube-custom-resources-rs/src/rc_app_stacks/v1beta2/runtimecomponents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/application-stacks/runtime-component-operator/rc.app.stacks/v1beta2/runtimecomponents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rc_app_stacks/v1beta2/runtimeoperations.rs b/kube-custom-resources-rs/src/rc_app_stacks/v1beta2/runtimeoperations.rs index 5022a8b8a..f299e93e4 100644 --- a/kube-custom-resources-rs/src/rc_app_stacks/v1beta2/runtimeoperations.rs +++ b/kube-custom-resources-rs/src/rc_app_stacks/v1beta2/runtimeoperations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/application-stacks/runtime-component-operator/rc.app.stacks/v1beta2/runtimeoperations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbclusterparametergroups.rs b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbclusterparametergroups.rs index 05cf962d9..fbfe590e4 100644 --- a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbclusterparametergroups.rs +++ b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbclusterparametergroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/rds-controller/rds.services.k8s.aws/v1alpha1/dbclusterparametergroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbclusters.rs b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbclusters.rs index a36925d31..48c7b08f4 100644 --- a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbclusters.rs +++ b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/rds-controller/rds.services.k8s.aws/v1alpha1/dbclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbinstances.rs b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbinstances.rs index cfba9be7f..44b787566 100644 --- a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbinstances.rs +++ b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbinstances.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/rds-controller/rds.services.k8s.aws/v1alpha1/dbinstances.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbparametergroups.rs b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbparametergroups.rs index 0e29d0ec3..4832f8f82 100644 --- a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbparametergroups.rs +++ b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbparametergroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/rds-controller/rds.services.k8s.aws/v1alpha1/dbparametergroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbproxies.rs b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbproxies.rs index 255fa0f05..a0c9f6571 100644 --- a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbproxies.rs +++ b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbproxies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/rds-controller/rds.services.k8s.aws/v1alpha1/dbproxies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbsubnetgroups.rs b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbsubnetgroups.rs index ac9cc6ec9..a567dd3eb 100644 --- a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbsubnetgroups.rs +++ b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/dbsubnetgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/rds-controller/rds.services.k8s.aws/v1alpha1/dbsubnetgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/globalclusters.rs b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/globalclusters.rs index d4f29cd95..20784a10b 100644 --- a/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/globalclusters.rs +++ b/kube-custom-resources-rs/src/rds_services_k8s_aws/v1alpha1/globalclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/rds-controller/rds.services.k8s.aws/v1alpha1/globalclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/redhatcop_redhat_io/v1alpha1/keepalivedgroups.rs b/kube-custom-resources-rs/src/redhatcop_redhat_io/v1alpha1/keepalivedgroups.rs index fe2c0c49c..15920baca 100644 --- a/kube-custom-resources-rs/src/redhatcop_redhat_io/v1alpha1/keepalivedgroups.rs +++ b/kube-custom-resources-rs/src/redhatcop_redhat_io/v1alpha1/keepalivedgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/redhat-cop/keepalived-operator/redhatcop.redhat.io/v1alpha1/keepalivedgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/registry_apicur_io/v1/apicurioregistries.rs b/kube-custom-resources-rs/src/registry_apicur_io/v1/apicurioregistries.rs index 54b17608a..c9af64f3a 100644 --- a/kube-custom-resources-rs/src/registry_apicur_io/v1/apicurioregistries.rs +++ b/kube-custom-resources-rs/src/registry_apicur_io/v1/apicurioregistries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/Apicurio/apicurio-registry-operator/registry.apicur.io/v1/apicurioregistries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/clusterdevfileregistrieslists.rs b/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/clusterdevfileregistrieslists.rs index 2a18e699e..79b3cba19 100644 --- a/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/clusterdevfileregistrieslists.rs +++ b/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/clusterdevfileregistrieslists.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/devfile/registry-operator/registry.devfile.io/v1alpha1/clusterdevfileregistrieslists.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/devfileregistries.rs b/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/devfileregistries.rs index 986cb254c..ba0ba0fb6 100644 --- a/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/devfileregistries.rs +++ b/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/devfileregistries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/devfile/registry-operator/registry.devfile.io/v1alpha1/devfileregistries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/devfileregistrieslists.rs b/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/devfileregistrieslists.rs index f45db723a..d821cab34 100644 --- a/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/devfileregistrieslists.rs +++ b/kube-custom-resources-rs/src/registry_devfile_io/v1alpha1/devfileregistrieslists.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/devfile/registry-operator/registry.devfile.io/v1alpha1/devfileregistrieslists.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/reliablesyncs_kubeedge_io/v1alpha1/clusterobjectsyncs.rs b/kube-custom-resources-rs/src/reliablesyncs_kubeedge_io/v1alpha1/clusterobjectsyncs.rs index ae6685c87..ae5bcc2fa 100644 --- a/kube-custom-resources-rs/src/reliablesyncs_kubeedge_io/v1alpha1/clusterobjectsyncs.rs +++ b/kube-custom-resources-rs/src/reliablesyncs_kubeedge_io/v1alpha1/clusterobjectsyncs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/reliablesyncs.kubeedge.io/v1alpha1/clusterobjectsyncs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/reliablesyncs_kubeedge_io/v1alpha1/objectsyncs.rs b/kube-custom-resources-rs/src/reliablesyncs_kubeedge_io/v1alpha1/objectsyncs.rs index 856020b60..fa49b04a5 100644 --- a/kube-custom-resources-rs/src/reliablesyncs_kubeedge_io/v1alpha1/objectsyncs.rs +++ b/kube-custom-resources-rs/src/reliablesyncs_kubeedge_io/v1alpha1/objectsyncs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/reliablesyncs.kubeedge.io/v1alpha1/objectsyncs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/remediation_medik8s_io/v1alpha1/nodehealthchecks.rs b/kube-custom-resources-rs/src/remediation_medik8s_io/v1alpha1/nodehealthchecks.rs index 174af2e77..4ea863a94 100644 --- a/kube-custom-resources-rs/src/remediation_medik8s_io/v1alpha1/nodehealthchecks.rs +++ b/kube-custom-resources-rs/src/remediation_medik8s_io/v1alpha1/nodehealthchecks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/medik8s/node-healthcheck-operator/remediation.medik8s.io/v1alpha1/nodehealthchecks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -51,7 +52,7 @@ pub struct NodeHealthCheckSpec { /// /// Mutually exclusive with EscalatingRemediations #[serde(default, skip_serializing_if = "Option::is_none", rename = "remediationTemplate")] - pub remediation_template: Option, + pub remediation_template: Option, /// Label selector to match nodes whose health will be exercised. /// /// @@ -84,7 +85,7 @@ pub struct NodeHealthCheckEscalatingRemediations { /// If a node needs remediation the controller will create an object from this template /// and then it should be picked up by a remediation provider. #[serde(rename = "remediationTemplate")] - pub remediation_template: NodeHealthCheckEscalatingRemediationsRemediationTemplate, + pub remediation_template: ObjectReference, /// Timeout defines how long NHC will wait for the node getting healthy /// before the next remediation (if any) will be used. When the last remediation times out, /// the overall remediation is considered as failed. @@ -298,7 +299,7 @@ pub struct NodeHealthCheckStatusUnhealthyNodes { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct NodeHealthCheckStatusUnhealthyNodesRemediations { /// Resource is the reference to the remediation CR which was created - pub resource: NodeHealthCheckStatusUnhealthyNodesRemediationsResource, + pub resource: ObjectReference, /// Started is the creation time of the remediation CR pub started: String, /// TemplateName is required when using several templates of the same kind diff --git a/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulpbackups.rs b/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulpbackups.rs index 58a3c45f9..f73e48e8c 100644 --- a/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulpbackups.rs +++ b/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulpbackups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/pulp/pulp-operator/repo-manager.pulpproject.org/v1beta2/pulpbackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulprestores.rs b/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulprestores.rs index cd7850d7f..4e4ae736a 100644 --- a/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulprestores.rs +++ b/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulprestores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/pulp/pulp-operator/repo-manager.pulpproject.org/v1beta2/pulprestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulps.rs b/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulps.rs index 776bc176d..2991b922b 100644 --- a/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulps.rs +++ b/kube-custom-resources-rs/src/repo_manager_pulpproject_org/v1beta2/pulps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/pulp/pulp-operator/repo-manager.pulpproject.org/v1beta2/pulps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/reports_kyverno_io/v1/clusterephemeralreports.rs b/kube-custom-resources-rs/src/reports_kyverno_io/v1/clusterephemeralreports.rs index 547212d49..c9cebbd64 100644 --- a/kube-custom-resources-rs/src/reports_kyverno_io/v1/clusterephemeralreports.rs +++ b/kube-custom-resources-rs/src/reports_kyverno_io/v1/clusterephemeralreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/reports.kyverno.io/v1/clusterephemeralreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -78,7 +79,7 @@ pub struct ClusterEphemeralReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -132,43 +133,6 @@ pub struct ClusterEphemeralReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ClusterEphemeralReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum ClusterEphemeralReportResultsResult { diff --git a/kube-custom-resources-rs/src/reports_kyverno_io/v1/ephemeralreports.rs b/kube-custom-resources-rs/src/reports_kyverno_io/v1/ephemeralreports.rs index 1f3b982ff..5efabdf86 100644 --- a/kube-custom-resources-rs/src/reports_kyverno_io/v1/ephemeralreports.rs +++ b/kube-custom-resources-rs/src/reports_kyverno_io/v1/ephemeralreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kyverno/kyverno/reports.kyverno.io/v1/ephemeralreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -79,7 +80,7 @@ pub struct EphemeralReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -133,43 +134,6 @@ pub struct EphemeralReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct EphemeralReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum EphemeralReportResultsResult { diff --git a/kube-custom-resources-rs/src/resources_teleport_dev/v1/teleportloginrules.rs b/kube-custom-resources-rs/src/resources_teleport_dev/v1/teleportloginrules.rs index 3fad9d9d7..090b993eb 100644 --- a/kube-custom-resources-rs/src/resources_teleport_dev/v1/teleportloginrules.rs +++ b/kube-custom-resources-rs/src/resources_teleport_dev/v1/teleportloginrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gravitational/teleport/resources.teleport.dev/v1/teleportloginrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/resources_teleport_dev/v1/teleportoktaimportrules.rs b/kube-custom-resources-rs/src/resources_teleport_dev/v1/teleportoktaimportrules.rs index 119037ec4..b22327ee9 100644 --- a/kube-custom-resources-rs/src/resources_teleport_dev/v1/teleportoktaimportrules.rs +++ b/kube-custom-resources-rs/src/resources_teleport_dev/v1/teleportoktaimportrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gravitational/teleport/resources.teleport.dev/v1/teleportoktaimportrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/resources_teleport_dev/v2/teleportsamlconnectors.rs b/kube-custom-resources-rs/src/resources_teleport_dev/v2/teleportsamlconnectors.rs index 8bc919341..bdcd22164 100644 --- a/kube-custom-resources-rs/src/resources_teleport_dev/v2/teleportsamlconnectors.rs +++ b/kube-custom-resources-rs/src/resources_teleport_dev/v2/teleportsamlconnectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportsamlconnectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/resources_teleport_dev/v2/teleportusers.rs b/kube-custom-resources-rs/src/resources_teleport_dev/v2/teleportusers.rs index a89122b98..68c7c9e54 100644 --- a/kube-custom-resources-rs/src/resources_teleport_dev/v2/teleportusers.rs +++ b/kube-custom-resources-rs/src/resources_teleport_dev/v2/teleportusers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gravitational/teleport/resources.teleport.dev/v2/teleportusers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/resources_teleport_dev/v3/teleportgithubconnectors.rs b/kube-custom-resources-rs/src/resources_teleport_dev/v3/teleportgithubconnectors.rs index c8bdfffbe..eb87778ae 100644 --- a/kube-custom-resources-rs/src/resources_teleport_dev/v3/teleportgithubconnectors.rs +++ b/kube-custom-resources-rs/src/resources_teleport_dev/v3/teleportgithubconnectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gravitational/teleport/resources.teleport.dev/v3/teleportgithubconnectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/resources_teleport_dev/v3/teleportoidcconnectors.rs b/kube-custom-resources-rs/src/resources_teleport_dev/v3/teleportoidcconnectors.rs index 71dbf91e9..2dd740f8d 100644 --- a/kube-custom-resources-rs/src/resources_teleport_dev/v3/teleportoidcconnectors.rs +++ b/kube-custom-resources-rs/src/resources_teleport_dev/v3/teleportoidcconnectors.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/gravitational/teleport/resources.teleport.dev/v3/teleportoidcconnectors.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/brokers.rs b/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/brokers.rs index efb50d082..8f51ac93e 100644 --- a/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/brokers.rs +++ b/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/brokers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/rocketmq-operator/rocketmq.apache.org/v1alpha1/brokers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/consoles.rs b/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/consoles.rs index 5f29a4a83..998e82d73 100644 --- a/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/consoles.rs +++ b/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/consoles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/rocketmq-operator/rocketmq.apache.org/v1alpha1/consoles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/nameservices.rs b/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/nameservices.rs index 01a12610f..1c069ec22 100644 --- a/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/nameservices.rs +++ b/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/nameservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/rocketmq-operator/rocketmq.apache.org/v1alpha1/nameservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/topictransfers.rs b/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/topictransfers.rs index e9caa96b9..383327e01 100644 --- a/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/topictransfers.rs +++ b/kube-custom-resources-rs/src/rocketmq_apache_org/v1alpha1/topictransfers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apache/rocketmq-operator/rocketmq.apache.org/v1alpha1/topictransfers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/route53_services_k8s_aws/v1alpha1/hostedzones.rs b/kube-custom-resources-rs/src/route53_services_k8s_aws/v1alpha1/hostedzones.rs index 3f385e054..9f43f18bc 100644 --- a/kube-custom-resources-rs/src/route53_services_k8s_aws/v1alpha1/hostedzones.rs +++ b/kube-custom-resources-rs/src/route53_services_k8s_aws/v1alpha1/hostedzones.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/route53-controller/route53.services.k8s.aws/v1alpha1/hostedzones.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/route53_services_k8s_aws/v1alpha1/recordsets.rs b/kube-custom-resources-rs/src/route53_services_k8s_aws/v1alpha1/recordsets.rs index aadbf635f..ee8e7c255 100644 --- a/kube-custom-resources-rs/src/route53_services_k8s_aws/v1alpha1/recordsets.rs +++ b/kube-custom-resources-rs/src/route53_services_k8s_aws/v1alpha1/recordsets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/route53-controller/route53.services.k8s.aws/v1alpha1/recordsets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/route53resolver_services_k8s_aws/v1alpha1/resolverendpoints.rs b/kube-custom-resources-rs/src/route53resolver_services_k8s_aws/v1alpha1/resolverendpoints.rs index ae8fe8a9c..e88170e20 100644 --- a/kube-custom-resources-rs/src/route53resolver_services_k8s_aws/v1alpha1/resolverendpoints.rs +++ b/kube-custom-resources-rs/src/route53resolver_services_k8s_aws/v1alpha1/resolverendpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/route53resolver-controller/route53resolver.services.k8s.aws/v1alpha1/resolverendpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/route53resolver_services_k8s_aws/v1alpha1/resolverrules.rs b/kube-custom-resources-rs/src/route53resolver_services_k8s_aws/v1alpha1/resolverrules.rs index d9c460e4e..a095dfa84 100644 --- a/kube-custom-resources-rs/src/route53resolver_services_k8s_aws/v1alpha1/resolverrules.rs +++ b/kube-custom-resources-rs/src/route53resolver_services_k8s_aws/v1alpha1/resolverrules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/route53resolver-controller/route53resolver.services.k8s.aws/v1alpha1/resolverrules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rules_kubeedge_io/v1/ruleendpoints.rs b/kube-custom-resources-rs/src/rules_kubeedge_io/v1/ruleendpoints.rs index 1f81541be..69db1fb93 100644 --- a/kube-custom-resources-rs/src/rules_kubeedge_io/v1/ruleendpoints.rs +++ b/kube-custom-resources-rs/src/rules_kubeedge_io/v1/ruleendpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/rules.kubeedge.io/v1/ruleendpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/rules_kubeedge_io/v1/rules.rs b/kube-custom-resources-rs/src/rules_kubeedge_io/v1/rules.rs index 9f273e91d..27ab8bad0 100644 --- a/kube-custom-resources-rs/src/rules_kubeedge_io/v1/rules.rs +++ b/kube-custom-resources-rs/src/rules_kubeedge_io/v1/rules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeedge/kubeedge/rules.kubeedge.io/v1/rules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/runtime_cluster_x_k8s_io/v1alpha1/extensionconfigs.rs b/kube-custom-resources-rs/src/runtime_cluster_x_k8s_io/v1alpha1/extensionconfigs.rs index a8fd1ff0c..b6e517f4b 100644 --- a/kube-custom-resources-rs/src/runtime_cluster_x_k8s_io/v1alpha1/extensionconfigs.rs +++ b/kube-custom-resources-rs/src/runtime_cluster_x_k8s_io/v1alpha1/extensionconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/cluster-api/runtime.cluster.x-k8s.io/v1alpha1/extensionconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/s3_services_k8s_aws/v1alpha1/buckets.rs b/kube-custom-resources-rs/src/s3_services_k8s_aws/v1alpha1/buckets.rs index fcdb041f5..21a653dbf 100644 --- a/kube-custom-resources-rs/src/s3_services_k8s_aws/v1alpha1/buckets.rs +++ b/kube-custom-resources-rs/src/s3_services_k8s_aws/v1alpha1/buckets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/s3-controller/s3.services.k8s.aws/v1alpha1/buckets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3buckets.rs b/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3buckets.rs index fd8d6f4a4..0eab4261c 100644 --- a/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3buckets.rs +++ b/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3buckets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/snapp-incubator/ceph-s3-operator/s3.snappcloud.io/v1alpha1/s3buckets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3userclaims.rs b/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3userclaims.rs index d3bde2174..20f0a280c 100644 --- a/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3userclaims.rs +++ b/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3userclaims.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/snapp-incubator/ceph-s3-operator/s3.snappcloud.io/v1alpha1/s3userclaims.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3users.rs b/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3users.rs index 88fc93920..541b07655 100644 --- a/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3users.rs +++ b/kube-custom-resources-rs/src/s3_snappcloud_io/v1alpha1/s3users.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/snapp-incubator/ceph-s3-operator/s3.snappcloud.io/v1alpha1/s3users.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -20,7 +21,7 @@ pub struct S3UserSpec { /// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. /// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . #[serde(default, skip_serializing_if = "Option::is_none", rename = "claimRef")] - pub claim_ref: Option, + pub claim_ref: Option, /// UserQuota specifies the quota for a user in Ceph #[serde(default, skip_serializing_if = "Option::is_none")] pub quota: Option, diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/apps.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/apps.rs index 5ca51477a..ca7d03191 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/apps.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/apps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/apps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/dataqualityjobdefinitions.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/dataqualityjobdefinitions.rs index be959555b..8f46aea1a 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/dataqualityjobdefinitions.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/dataqualityjobdefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/dataqualityjobdefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/domains.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/domains.rs index 84c7d6117..19ba56fe1 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/domains.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/domains.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/domains.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/endpointconfigs.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/endpointconfigs.rs index dd137c64a..309485c28 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/endpointconfigs.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/endpointconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/endpointconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/endpoints.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/endpoints.rs index 784a607d5..ff06a6783 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/endpoints.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/endpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/endpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/featuregroups.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/featuregroups.rs index 2b7281145..72b499284 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/featuregroups.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/featuregroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/featuregroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/hyperparametertuningjobs.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/hyperparametertuningjobs.rs index abab7cf25..7171fe0bb 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/hyperparametertuningjobs.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/hyperparametertuningjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/hyperparametertuningjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelbiasjobdefinitions.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelbiasjobdefinitions.rs index 410c3dfc5..11061eb3c 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelbiasjobdefinitions.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelbiasjobdefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/modelbiasjobdefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelexplainabilityjobdefinitions.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelexplainabilityjobdefinitions.rs index 2bbe8cbe7..39d371823 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelexplainabilityjobdefinitions.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelexplainabilityjobdefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/modelexplainabilityjobdefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelpackagegroups.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelpackagegroups.rs index af18885ca..cef8511e9 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelpackagegroups.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelpackagegroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/modelpackagegroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelpackages.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelpackages.rs index ab3f918bc..ba9090036 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelpackages.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelpackages.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/modelpackages.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelqualityjobdefinitions.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelqualityjobdefinitions.rs index f356dea29..93a0e1cc1 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelqualityjobdefinitions.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/modelqualityjobdefinitions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/modelqualityjobdefinitions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/models.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/models.rs index 473ab86e7..351d903bc 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/models.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/models.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/models.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/monitoringschedules.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/monitoringschedules.rs index 7cc58d333..71eb2e9be 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/monitoringschedules.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/monitoringschedules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/monitoringschedules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/notebookinstancelifecycleconfigs.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/notebookinstancelifecycleconfigs.rs index c546a6e09..5fea9ef71 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/notebookinstancelifecycleconfigs.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/notebookinstancelifecycleconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/notebookinstancelifecycleconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/notebookinstances.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/notebookinstances.rs index 49efcdf84..09441cf40 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/notebookinstances.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/notebookinstances.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/notebookinstances.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/processingjobs.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/processingjobs.rs index 9784da69c..24be16971 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/processingjobs.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/processingjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/processingjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/trainingjobs.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/trainingjobs.rs index d1b310745..fd360e6f9 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/trainingjobs.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/trainingjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/trainingjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/transformjobs.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/transformjobs.rs index ce390b466..23fe241e8 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/transformjobs.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/transformjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/transformjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/userprofiles.rs b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/userprofiles.rs index 04057aef9..3b4383543 100644 --- a/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/userprofiles.rs +++ b/kube-custom-resources-rs/src/sagemaker_services_k8s_aws/v1alpha1/userprofiles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sagemaker-controller/sagemaker.services.k8s.aws/v1alpha1/userprofiles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/devices.rs b/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/devices.rs index 9b49d34d5..a651b3575 100644 --- a/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/devices.rs +++ b/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/devices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/koordinator-sh/koordinator/scheduling.koordinator.sh/v1alpha1/devices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/podmigrationjobs.rs b/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/podmigrationjobs.rs index ca9e08751..0dc2eb76f 100644 --- a/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/podmigrationjobs.rs +++ b/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/podmigrationjobs.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/koordinator-sh/koordinator/scheduling.koordinator.sh/v1alpha1/podmigrationjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -30,7 +31,7 @@ pub struct PodMigrationJobSpec { pub paused: Option, /// PodRef represents the Pod that be migrated #[serde(rename = "podRef")] - pub pod_ref: PodMigrationJobPodRef, + pub pod_ref: ObjectReference, /// ReservationOptions defines the Reservation options for migrated Pod #[serde(default, skip_serializing_if = "Option::is_none", rename = "reservationOptions")] pub reservation_options: Option, @@ -151,7 +152,7 @@ pub struct PodMigrationJobReservationOptions { /// ReservationRef if not specified, PodMigrationJob controller will create Reservation by Template, /// and update the ReservationRef to reference the Reservation #[serde(default, skip_serializing_if = "Option::is_none", rename = "reservationRef")] - pub reservation_ref: Option, + pub reservation_ref: Option, /// Template is the object that describes the Reservation that will be created if not specified ReservationRef #[serde(default, skip_serializing_if = "Option::is_none")] pub template: Option, @@ -220,10 +221,10 @@ pub struct PodMigrationJobStatus { pub phase: Option, /// PodRef represents the newly created Pod after being migrated #[serde(default, skip_serializing_if = "Option::is_none", rename = "podRef")] - pub pod_ref: Option, + pub pod_ref: Option, /// PreemptedPodsRef represents the Pods that be preempted #[serde(default, skip_serializing_if = "Option::is_none", rename = "preemptedPodsRef")] - pub preempted_pods_ref: Option>, + pub preempted_pods_ref: Option>, /// PreemptedPodsReservations records information about Reservations created due to preemption #[serde(default, skip_serializing_if = "Option::is_none", rename = "preemptedPodsReservation")] pub preempted_pods_reservation: Option>, @@ -274,60 +275,6 @@ pub struct PodMigrationJobStatusPodRef { pub uid: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct PodMigrationJobStatusPreemptedPodsRef { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct PodMigrationJobStatusPreemptedPodsReservation { /// Name represents the name of Reservation @@ -344,64 +291,10 @@ pub struct PodMigrationJobStatusPreemptedPodsReservation { pub phase: Option, /// PodsRef represents the newly created Pods after being preempted #[serde(default, skip_serializing_if = "Option::is_none", rename = "podsRef")] - pub pods_ref: Option>, + pub pods_ref: Option>, /// PreemptedPodRef represents the Pod that be preempted #[serde(default, skip_serializing_if = "Option::is_none", rename = "preemptedPodRef")] - pub preempted_pod_ref: Option, -} - -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct PodMigrationJobStatusPreemptedPodsReservationPodsRef { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, + pub preempted_pod_ref: Option, } /// PreemptedPodRef represents the Pod that be preempted diff --git a/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/reservations.rs b/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/reservations.rs index b633a5d71..4218caf96 100644 --- a/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/reservations.rs +++ b/kube-custom-resources-rs/src/scheduling_koordinator_sh/v1alpha1/reservations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/koordinator-sh/koordinator/scheduling.koordinator.sh/v1alpha1/reservations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -9,6 +9,7 @@ mod prelude { pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -76,7 +77,7 @@ pub struct ReservationOwners { pub label_selector: Option, /// Multiple field selectors are ANDed. #[serde(default, skip_serializing_if = "Option::is_none")] - pub object: Option, + pub object: Option, } #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] @@ -212,7 +213,7 @@ pub struct ReservationStatus { pub conditions: Option>, /// Current resource owners which allocated the reservation resources. #[serde(default, skip_serializing_if = "Option::is_none", rename = "currentOwners")] - pub current_owners: Option>, + pub current_owners: Option>, /// Name of node the reservation is scheduled on. #[serde(default, skip_serializing_if = "Option::is_none", rename = "nodeName")] pub node_name: Option, @@ -222,57 +223,3 @@ pub struct ReservationStatus { pub phase: Option, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. -/// --- -/// New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. -/// 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. -/// 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular -/// restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". -/// Those cannot be well described when embedded. -/// 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. -/// 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity -/// during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple -/// and the version of the actual struct is irrelevant. -/// 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type -/// will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// -/// -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. -/// For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ReservationStatusCurrentOwners { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string - /// should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. - /// For example, if the object reference is to a container within a pod, this would take on a value like: - /// "spec.containers{name}" (where "name" refers to the name of the container that triggered - /// the event) or if no container name is specified "spec.containers[2]" (container with - /// index 2 in this pod). This syntax is chosen only to have some well-defined way of - /// referencing a part of an object. - /// TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. - /// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. - /// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - diff --git a/kube-custom-resources-rs/src/scheduling_sigs_k8s_io/v1alpha1/elasticquotas.rs b/kube-custom-resources-rs/src/scheduling_sigs_k8s_io/v1alpha1/elasticquotas.rs index f8b7f0490..38b452ea8 100644 --- a/kube-custom-resources-rs/src/scheduling_sigs_k8s_io/v1alpha1/elasticquotas.rs +++ b/kube-custom-resources-rs/src/scheduling_sigs_k8s_io/v1alpha1/elasticquotas.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/koordinator-sh/koordinator/scheduling.sigs.k8s.io/v1alpha1/elasticquotas.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/scheduling_sigs_k8s_io/v1alpha1/podgroups.rs b/kube-custom-resources-rs/src/scheduling_sigs_k8s_io/v1alpha1/podgroups.rs index 6de3d77be..57656a822 100644 --- a/kube-custom-resources-rs/src/scheduling_sigs_k8s_io/v1alpha1/podgroups.rs +++ b/kube-custom-resources-rs/src/scheduling_sigs_k8s_io/v1alpha1/podgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/koordinator-sh/koordinator/scheduling.sigs.k8s.io/v1alpha1/podgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/scheduling_volcano_sh/v1beta1/podgroups.rs b/kube-custom-resources-rs/src/scheduling_volcano_sh/v1beta1/podgroups.rs index 2d435a04d..9de726ec9 100644 --- a/kube-custom-resources-rs/src/scheduling_volcano_sh/v1beta1/podgroups.rs +++ b/kube-custom-resources-rs/src/scheduling_volcano_sh/v1beta1/podgroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/volcano-sh/volcano/scheduling.volcano.sh/v1beta1/podgroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/scheduling_volcano_sh/v1beta1/queues.rs b/kube-custom-resources-rs/src/scheduling_volcano_sh/v1beta1/queues.rs index 6e7db9b71..62e09024c 100644 --- a/kube-custom-resources-rs/src/scheduling_volcano_sh/v1beta1/queues.rs +++ b/kube-custom-resources-rs/src/scheduling_volcano_sh/v1beta1/queues.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/volcano-sh/volcano/scheduling.volcano.sh/v1beta1/queues.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/datatypes.rs b/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/datatypes.rs index 9e86ccb86..585f025dc 100644 --- a/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/datatypes.rs +++ b/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/datatypes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/schemahero/schemahero/schemas.schemahero.io/v1alpha4/datatypes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/migrations.rs b/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/migrations.rs index 2b68bf147..e55b7ac92 100644 --- a/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/migrations.rs +++ b/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/migrations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/schemahero/schemahero/schemas.schemahero.io/v1alpha4/migrations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/tables.rs b/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/tables.rs index c3f458aba..612933692 100644 --- a/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/tables.rs +++ b/kube-custom-resources-rs/src/schemas_schemahero_io/v1alpha4/tables.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/schemahero/schemahero/schemas.schemahero.io/v1alpha4/tables.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/scylla_scylladb_com/v1/scyllaclusters.rs b/kube-custom-resources-rs/src/scylla_scylladb_com/v1/scyllaclusters.rs index 90241e308..cc1119798 100644 --- a/kube-custom-resources-rs/src/scylla_scylladb_com/v1/scyllaclusters.rs +++ b/kube-custom-resources-rs/src/scylla_scylladb_com/v1/scyllaclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/scylladb/scylla-operator/scylla.scylladb.com/v1/scyllaclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/scylla_scylladb_com/v1alpha1/nodeconfigs.rs b/kube-custom-resources-rs/src/scylla_scylladb_com/v1alpha1/nodeconfigs.rs index 2cfc462bf..501cac49c 100644 --- a/kube-custom-resources-rs/src/scylla_scylladb_com/v1alpha1/nodeconfigs.rs +++ b/kube-custom-resources-rs/src/scylla_scylladb_com/v1alpha1/nodeconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/scylladb/scylla-operator/scylla.scylladb.com/v1alpha1/nodeconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/scylla_scylladb_com/v1alpha1/scyllaoperatorconfigs.rs b/kube-custom-resources-rs/src/scylla_scylladb_com/v1alpha1/scyllaoperatorconfigs.rs index 90c40f39a..e7aa1a959 100644 --- a/kube-custom-resources-rs/src/scylla_scylladb_com/v1alpha1/scyllaoperatorconfigs.rs +++ b/kube-custom-resources-rs/src/scylla_scylladb_com/v1alpha1/scyllaoperatorconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/scylladb/scylla-operator/scylla.scylladb.com/v1alpha1/scyllaoperatorconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/basicauths.rs b/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/basicauths.rs index c1723a464..2e4f73c2d 100644 --- a/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/basicauths.rs +++ b/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/basicauths.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mittwald/kubernetes-secret-generator/secretgenerator.mittwald.de/v1alpha1/basicauths.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -35,7 +36,7 @@ pub struct BasicAuthSpec { pub struct BasicAuthStatus { /// ObjectReference contains enough information to let you inspect or modify the referred object. #[serde(default, skip_serializing_if = "Option::is_none")] - pub secret: Option, + pub secret: Option, } /// ObjectReference contains enough information to let you inspect or modify the referred object. diff --git a/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/sshkeypairs.rs b/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/sshkeypairs.rs index 9381020a3..7ad313a5e 100644 --- a/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/sshkeypairs.rs +++ b/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/sshkeypairs.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mittwald/kubernetes-secret-generator/secretgenerator.mittwald.de/v1alpha1/sshkeypairs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -36,7 +37,7 @@ pub struct SSHKeyPairSpec { pub struct SSHKeyPairStatus { /// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster Important: Run "operator-sdk generate k8s" to regenerate code after modifying this file Add custom validation using kubebuilder tags: https://book-v1.book.kubebuilder.io/beyond_basics/generating_crd.html #[serde(default, skip_serializing_if = "Option::is_none")] - pub secret: Option, + pub secret: Option, } /// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster Important: Run "operator-sdk generate k8s" to regenerate code after modifying this file Add custom validation using kubebuilder tags: https://book-v1.book.kubebuilder.io/beyond_basics/generating_crd.html diff --git a/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/stringsecrets.rs b/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/stringsecrets.rs index 5c09f9982..6b65683cf 100644 --- a/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/stringsecrets.rs +++ b/kube-custom-resources-rs/src/secretgenerator_mittwald_de/v1alpha1/stringsecrets.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/mittwald/kubernetes-secret-generator/secretgenerator.mittwald.de/v1alpha1/stringsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -43,7 +44,7 @@ pub struct StringSecretFields { pub struct StringSecretStatus { /// ObjectReference contains enough information to let you inspect or modify the referred object. #[serde(default, skip_serializing_if = "Option::is_none")] - pub secret: Option, + pub secret: Option, } /// ObjectReference contains enough information to let you inspect or modify the referred object. diff --git a/kube-custom-resources-rs/src/secrets_crossplane_io/v1alpha1/storeconfigs.rs b/kube-custom-resources-rs/src/secrets_crossplane_io/v1alpha1/storeconfigs.rs index 128393b78..61cd2d710 100644 --- a/kube-custom-resources-rs/src/secrets_crossplane_io/v1alpha1/storeconfigs.rs +++ b/kube-custom-resources-rs/src/secrets_crossplane_io/v1alpha1/storeconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/crossplane/crossplane/secrets.crossplane.io/v1alpha1/storeconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_doppler_com/v1alpha1/dopplersecrets.rs b/kube-custom-resources-rs/src/secrets_doppler_com/v1alpha1/dopplersecrets.rs index aa0443af3..4352be3e3 100644 --- a/kube-custom-resources-rs/src/secrets_doppler_com/v1alpha1/dopplersecrets.rs +++ b/kube-custom-resources-rs/src/secrets_doppler_com/v1alpha1/dopplersecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/DopplerHQ/kubernetes-operator/secrets.doppler.com/v1alpha1/dopplersecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/hcpauths.rs b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/hcpauths.rs index b3bda77a7..7a7679a0d 100644 --- a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/hcpauths.rs +++ b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/hcpauths.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hashicorp/vault-secrets-operator/secrets.hashicorp.com/v1beta1/hcpauths.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/hcpvaultsecretsapps.rs b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/hcpvaultsecretsapps.rs index 4ae44ae72..8468a90f3 100644 --- a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/hcpvaultsecretsapps.rs +++ b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/hcpvaultsecretsapps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hashicorp/vault-secrets-operator/secrets.hashicorp.com/v1beta1/hcpvaultsecretsapps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultauths.rs b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultauths.rs index 61dabfaa6..57d128777 100644 --- a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultauths.rs +++ b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultauths.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hashicorp/vault-secrets-operator/secrets.hashicorp.com/v1beta1/vaultauths.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultconnections.rs b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultconnections.rs index 4c67f54c2..b20a414fb 100644 --- a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultconnections.rs +++ b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultconnections.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hashicorp/vault-secrets-operator/secrets.hashicorp.com/v1beta1/vaultconnections.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultdynamicsecrets.rs b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultdynamicsecrets.rs index 70823dc10..346f87d27 100644 --- a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultdynamicsecrets.rs +++ b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultdynamicsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hashicorp/vault-secrets-operator/secrets.hashicorp.com/v1beta1/vaultdynamicsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultpkisecrets.rs b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultpkisecrets.rs index a95f70db9..f49eb4fce 100644 --- a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultpkisecrets.rs +++ b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultpkisecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hashicorp/vault-secrets-operator/secrets.hashicorp.com/v1beta1/vaultpkisecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultstaticsecrets.rs b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultstaticsecrets.rs index 55e4a7ceb..98816f21b 100644 --- a/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultstaticsecrets.rs +++ b/kube-custom-resources-rs/src/secrets_hashicorp_com/v1beta1/vaultstaticsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/hashicorp/vault-secrets-operator/secrets.hashicorp.com/v1beta1/vaultstaticsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1/secretproviderclasses.rs b/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1/secretproviderclasses.rs index 44af58697..f6ab5f28a 100644 --- a/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1/secretproviderclasses.rs +++ b/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1/secretproviderclasses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/secrets-store-csi-driver/secrets-store.csi.x-k8s.io/v1/secretproviderclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1/secretproviderclasspodstatuses.rs b/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1/secretproviderclasspodstatuses.rs index dc3c39d05..c660e26eb 100644 --- a/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1/secretproviderclasspodstatuses.rs +++ b/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1/secretproviderclasspodstatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/secrets-store-csi-driver/secrets-store.csi.x-k8s.io/v1/secretproviderclasspodstatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1alpha1/secretproviderclasses.rs b/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1alpha1/secretproviderclasses.rs index fc51c7223..c2fc13750 100644 --- a/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1alpha1/secretproviderclasses.rs +++ b/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1alpha1/secretproviderclasses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/secrets-store-csi-driver/secrets-store.csi.x-k8s.io/v1alpha1/secretproviderclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1alpha1/secretproviderclasspodstatuses.rs b/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1alpha1/secretproviderclasspodstatuses.rs index e9e486f83..31afc64b3 100644 --- a/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1alpha1/secretproviderclasspodstatuses.rs +++ b/kube-custom-resources-rs/src/secrets_store_csi_x_k8s_io/v1alpha1/secretproviderclasspodstatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/secrets-store-csi-driver/secrets-store.csi.x-k8s.io/v1alpha1/secretproviderclasspodstatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secretsmanager_services_k8s_aws/v1alpha1/secrets.rs b/kube-custom-resources-rs/src/secretsmanager_services_k8s_aws/v1alpha1/secrets.rs index 7995e8f37..26edf5b87 100644 --- a/kube-custom-resources-rs/src/secretsmanager_services_k8s_aws/v1alpha1/secrets.rs +++ b/kube-custom-resources-rs/src/secretsmanager_services_k8s_aws/v1alpha1/secrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/secretsmanager-controller/secretsmanager.services.k8s.aws/v1alpha1/secrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/secscan_quay_redhat_com/v1alpha1/imagemanifestvulns.rs b/kube-custom-resources-rs/src/secscan_quay_redhat_com/v1alpha1/imagemanifestvulns.rs index 9d712268a..6caf09183 100644 --- a/kube-custom-resources-rs/src/secscan_quay_redhat_com/v1alpha1/imagemanifestvulns.rs +++ b/kube-custom-resources-rs/src/secscan_quay_redhat_com/v1alpha1/imagemanifestvulns.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/quay/container-security-operator/secscan.quay.redhat.com/v1alpha1/imagemanifestvulns.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_istio_io/v1/authorizationpolicies.rs b/kube-custom-resources-rs/src/security_istio_io/v1/authorizationpolicies.rs index d58870b32..b14748dd5 100644 --- a/kube-custom-resources-rs/src/security_istio_io/v1/authorizationpolicies.rs +++ b/kube-custom-resources-rs/src/security_istio_io/v1/authorizationpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/security.istio.io/v1/authorizationpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_istio_io/v1/peerauthentications.rs b/kube-custom-resources-rs/src/security_istio_io/v1/peerauthentications.rs index 498742016..853ec0356 100644 --- a/kube-custom-resources-rs/src/security_istio_io/v1/peerauthentications.rs +++ b/kube-custom-resources-rs/src/security_istio_io/v1/peerauthentications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/security.istio.io/v1/peerauthentications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_istio_io/v1/requestauthentications.rs b/kube-custom-resources-rs/src/security_istio_io/v1/requestauthentications.rs index 00e714571..434f385f6 100644 --- a/kube-custom-resources-rs/src/security_istio_io/v1/requestauthentications.rs +++ b/kube-custom-resources-rs/src/security_istio_io/v1/requestauthentications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/security.istio.io/v1/requestauthentications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_istio_io/v1beta1/authorizationpolicies.rs b/kube-custom-resources-rs/src/security_istio_io/v1beta1/authorizationpolicies.rs index 6ea3c3b93..259cd9baf 100644 --- a/kube-custom-resources-rs/src/security_istio_io/v1beta1/authorizationpolicies.rs +++ b/kube-custom-resources-rs/src/security_istio_io/v1beta1/authorizationpolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/security.istio.io/v1beta1/authorizationpolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_istio_io/v1beta1/peerauthentications.rs b/kube-custom-resources-rs/src/security_istio_io/v1beta1/peerauthentications.rs index 7566cc11d..9f6df3e95 100644 --- a/kube-custom-resources-rs/src/security_istio_io/v1beta1/peerauthentications.rs +++ b/kube-custom-resources-rs/src/security_istio_io/v1beta1/peerauthentications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/security.istio.io/v1beta1/peerauthentications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_istio_io/v1beta1/requestauthentications.rs b/kube-custom-resources-rs/src/security_istio_io/v1beta1/requestauthentications.rs index 0de81cde0..efd328a93 100644 --- a/kube-custom-resources-rs/src/security_istio_io/v1beta1/requestauthentications.rs +++ b/kube-custom-resources-rs/src/security_istio_io/v1beta1/requestauthentications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/security.istio.io/v1beta1/requestauthentications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/apparmorprofiles.rs b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/apparmorprofiles.rs index faf3fd0e1..6070e2aa7 100644 --- a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/apparmorprofiles.rs +++ b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/apparmorprofiles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/security-profiles-operator/security-profiles-operator.x-k8s.io/v1alpha1/apparmorprofiles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/profilebindings.rs b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/profilebindings.rs index c655ed805..1b64703e2 100644 --- a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/profilebindings.rs +++ b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/profilebindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/security-profiles-operator/security-profiles-operator.x-k8s.io/v1alpha1/profilebindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/profilerecordings.rs b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/profilerecordings.rs index afe7c43dc..002872654 100644 --- a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/profilerecordings.rs +++ b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/profilerecordings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/security-profiles-operator/security-profiles-operator.x-k8s.io/v1alpha1/profilerecordings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/securityprofilenodestatuses.rs b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/securityprofilenodestatuses.rs index 72ab993c0..5f3854477 100644 --- a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/securityprofilenodestatuses.rs +++ b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/securityprofilenodestatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/security-profiles-operator/security-profiles-operator.x-k8s.io/v1alpha1/securityprofilenodestatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/securityprofilesoperatordaemons.rs b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/securityprofilesoperatordaemons.rs index 16502db95..b344f9321 100644 --- a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/securityprofilesoperatordaemons.rs +++ b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha1/securityprofilesoperatordaemons.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/security-profiles-operator/security-profiles-operator.x-k8s.io/v1alpha1/securityprofilesoperatordaemons.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha2/rawselinuxprofiles.rs b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha2/rawselinuxprofiles.rs index af700df1a..a203a1452 100644 --- a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha2/rawselinuxprofiles.rs +++ b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1alpha2/rawselinuxprofiles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/security-profiles-operator/security-profiles-operator.x-k8s.io/v1alpha2/rawselinuxprofiles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1beta1/seccompprofiles.rs b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1beta1/seccompprofiles.rs index 632ccdbbc..63fa5af65 100644 --- a/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1beta1/seccompprofiles.rs +++ b/kube-custom-resources-rs/src/security_profiles_operator_x_k8s_io/v1beta1/seccompprofiles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/security-profiles-operator/security-profiles-operator.x-k8s.io/v1beta1/seccompprofiles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediationconfigs.rs b/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediationconfigs.rs index 2a028d8dd..6bbac9eca 100644 --- a/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediationconfigs.rs +++ b/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediationconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/medik8s/self-node-remediation/self-node-remediation.medik8s.io/v1alpha1/selfnoderemediationconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediations.rs b/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediations.rs index 62e6192f1..89679d430 100644 --- a/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediations.rs +++ b/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/medik8s/self-node-remediation/self-node-remediation.medik8s.io/v1alpha1/selfnoderemediations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediationtemplates.rs b/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediationtemplates.rs index e2907fec2..b4a79c7c4 100644 --- a/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediationtemplates.rs +++ b/kube-custom-resources-rs/src/self_node_remediation_medik8s_io/v1alpha1/selfnoderemediationtemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/medik8s/self-node-remediation/self-node-remediation.medik8s.io/v1alpha1/selfnoderemediationtemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sematext_com/v1/sematextagents.rs b/kube-custom-resources-rs/src/sematext_com/v1/sematextagents.rs index 2d50f9634..d686762f1 100644 --- a/kube-custom-resources-rs/src/sematext_com/v1/sematextagents.rs +++ b/kube-custom-resources-rs/src/sematext_com/v1/sematextagents.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/sematext/sematext-operator/sematext.com/v1/sematextagents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/servicebinding_io/v1alpha3/clusterworkloadresourcemappings.rs b/kube-custom-resources-rs/src/servicebinding_io/v1alpha3/clusterworkloadresourcemappings.rs index da4a987a4..d1a457694 100644 --- a/kube-custom-resources-rs/src/servicebinding_io/v1alpha3/clusterworkloadresourcemappings.rs +++ b/kube-custom-resources-rs/src/servicebinding_io/v1alpha3/clusterworkloadresourcemappings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/redhat-developer/service-binding-operator/servicebinding.io/v1alpha3/clusterworkloadresourcemappings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/servicebinding_io/v1alpha3/servicebindings.rs b/kube-custom-resources-rs/src/servicebinding_io/v1alpha3/servicebindings.rs index 1b7d4e29c..f5c11feed 100644 --- a/kube-custom-resources-rs/src/servicebinding_io/v1alpha3/servicebindings.rs +++ b/kube-custom-resources-rs/src/servicebinding_io/v1alpha3/servicebindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/redhat-developer/service-binding-operator/servicebinding.io/v1alpha3/servicebindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/servicebinding_io/v1beta1/clusterworkloadresourcemappings.rs b/kube-custom-resources-rs/src/servicebinding_io/v1beta1/clusterworkloadresourcemappings.rs index bcf702cb7..a161bb6e7 100644 --- a/kube-custom-resources-rs/src/servicebinding_io/v1beta1/clusterworkloadresourcemappings.rs +++ b/kube-custom-resources-rs/src/servicebinding_io/v1beta1/clusterworkloadresourcemappings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/redhat-developer/service-binding-operator/servicebinding.io/v1beta1/clusterworkloadresourcemappings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/servicebinding_io/v1beta1/servicebindings.rs b/kube-custom-resources-rs/src/servicebinding_io/v1beta1/servicebindings.rs index 3604bb4ad..5a79975c7 100644 --- a/kube-custom-resources-rs/src/servicebinding_io/v1beta1/servicebindings.rs +++ b/kube-custom-resources-rs/src/servicebinding_io/v1beta1/servicebindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/redhat-developer/service-binding-operator/servicebinding.io/v1beta1/servicebindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiocontrolplanes.rs b/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiocontrolplanes.rs index a907bf74a..5b0db3cbf 100644 --- a/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiocontrolplanes.rs +++ b/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiocontrolplanes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/banzaicloud/istio-operator/servicemesh.cisco.com/v1alpha1/istiocontrolplanes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; diff --git a/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiomeshes.rs b/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiomeshes.rs index 6f0d84db7..c9267e930 100644 --- a/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiomeshes.rs +++ b/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiomeshes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/banzaicloud/istio-operator/servicemesh.cisco.com/v1alpha1/istiomeshes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiomeshgateways.rs b/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiomeshgateways.rs index 18f86f17e..df03abba4 100644 --- a/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiomeshgateways.rs +++ b/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/istiomeshgateways.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/banzaicloud/istio-operator/servicemesh.cisco.com/v1alpha1/istiomeshgateways.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; diff --git a/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/peeristiocontrolplanes.rs b/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/peeristiocontrolplanes.rs index 4d3615be8..7f1e770c3 100644 --- a/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/peeristiocontrolplanes.rs +++ b/kube-custom-resources-rs/src/servicemesh_cisco_com/v1alpha1/peeristiocontrolplanes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/banzaicloud/istio-operator/servicemesh.cisco.com/v1alpha1/peeristiocontrolplanes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; diff --git a/kube-custom-resources-rs/src/services_k8s_aws/v1alpha1/adoptedresources.rs b/kube-custom-resources-rs/src/services_k8s_aws/v1alpha1/adoptedresources.rs index a4a7a5890..108fdd6db 100644 --- a/kube-custom-resources-rs/src/services_k8s_aws/v1alpha1/adoptedresources.rs +++ b/kube-custom-resources-rs/src/services_k8s_aws/v1alpha1/adoptedresources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/eks-controller/services.k8s.aws/v1alpha1/adoptedresources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/services_k8s_aws/v1alpha1/fieldexports.rs b/kube-custom-resources-rs/src/services_k8s_aws/v1alpha1/fieldexports.rs index fd60bd6d1..e4a98aca9 100644 --- a/kube-custom-resources-rs/src/services_k8s_aws/v1alpha1/fieldexports.rs +++ b/kube-custom-resources-rs/src/services_k8s_aws/v1alpha1/fieldexports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/eks-controller/services.k8s.aws/v1alpha1/fieldexports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/serving_kubedl_io/v1alpha1/inferences.rs b/kube-custom-resources-rs/src/serving_kubedl_io/v1alpha1/inferences.rs index ad539e7ec..2a731b326 100644 --- a/kube-custom-resources-rs/src/serving_kubedl_io/v1alpha1/inferences.rs +++ b/kube-custom-resources-rs/src/serving_kubedl_io/v1alpha1/inferences.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/serving.kubedl.io/v1alpha1/inferences.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -8,6 +8,7 @@ mod prelude { pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -44,7 +45,7 @@ pub struct InferencePredictors { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct InferencePredictorsAutoScale { #[serde(rename = "autoScaler")] - pub auto_scaler: InferencePredictorsAutoScaleAutoScaler, + pub auto_scaler: ObjectReference, #[serde(default, skip_serializing_if = "Option::is_none", rename = "maxReplicas")] pub max_replicas: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "minReplicas")] diff --git a/kube-custom-resources-rs/src/sfn_services_k8s_aws/v1alpha1/activities.rs b/kube-custom-resources-rs/src/sfn_services_k8s_aws/v1alpha1/activities.rs index 97c227361..929392e96 100644 --- a/kube-custom-resources-rs/src/sfn_services_k8s_aws/v1alpha1/activities.rs +++ b/kube-custom-resources-rs/src/sfn_services_k8s_aws/v1alpha1/activities.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sfn-controller/sfn.services.k8s.aws/v1alpha1/activities.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sfn_services_k8s_aws/v1alpha1/statemachines.rs b/kube-custom-resources-rs/src/sfn_services_k8s_aws/v1alpha1/statemachines.rs index 8f763aaff..4f2a58993 100644 --- a/kube-custom-resources-rs/src/sfn_services_k8s_aws/v1alpha1/statemachines.rs +++ b/kube-custom-resources-rs/src/sfn_services_k8s_aws/v1alpha1/statemachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sfn-controller/sfn.services.k8s.aws/v1alpha1/statemachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/site_superedge_io/v1alpha1/nodegroups.rs b/kube-custom-resources-rs/src/site_superedge_io/v1alpha1/nodegroups.rs index 09f26f0c2..54fad0edc 100644 --- a/kube-custom-resources-rs/src/site_superedge_io/v1alpha1/nodegroups.rs +++ b/kube-custom-resources-rs/src/site_superedge_io/v1alpha1/nodegroups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/superedge/superedge/site.superedge.io/v1alpha1/nodegroups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/site_superedge_io/v1alpha1/nodeunits.rs b/kube-custom-resources-rs/src/site_superedge_io/v1alpha1/nodeunits.rs index 5ffc7a960..802fd2df5 100644 --- a/kube-custom-resources-rs/src/site_superedge_io/v1alpha1/nodeunits.rs +++ b/kube-custom-resources-rs/src/site_superedge_io/v1alpha1/nodeunits.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/superedge/superedge/site.superedge.io/v1alpha1/nodeunits.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/slo_koordinator_sh/v1alpha1/nodemetrics.rs b/kube-custom-resources-rs/src/slo_koordinator_sh/v1alpha1/nodemetrics.rs index 9197bf4cb..ff106843f 100644 --- a/kube-custom-resources-rs/src/slo_koordinator_sh/v1alpha1/nodemetrics.rs +++ b/kube-custom-resources-rs/src/slo_koordinator_sh/v1alpha1/nodemetrics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/koordinator-sh/koordinator/slo.koordinator.sh/v1alpha1/nodemetrics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/slo_koordinator_sh/v1alpha1/nodeslos.rs b/kube-custom-resources-rs/src/slo_koordinator_sh/v1alpha1/nodeslos.rs index 74ec708da..844e2c300 100644 --- a/kube-custom-resources-rs/src/slo_koordinator_sh/v1alpha1/nodeslos.rs +++ b/kube-custom-resources-rs/src/slo_koordinator_sh/v1alpha1/nodeslos.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/koordinator-sh/koordinator/slo.koordinator.sh/v1alpha1/nodeslos.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sloth_slok_dev/v1/prometheusservicelevels.rs b/kube-custom-resources-rs/src/sloth_slok_dev/v1/prometheusservicelevels.rs index e2f9d30c7..c9b0465aa 100644 --- a/kube-custom-resources-rs/src/sloth_slok_dev/v1/prometheusservicelevels.rs +++ b/kube-custom-resources-rs/src/sloth_slok_dev/v1/prometheusservicelevels.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/slok/sloth/sloth.slok.dev/v1/prometheusservicelevels.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/snapscheduler_backube/v1/snapshotschedules.rs b/kube-custom-resources-rs/src/snapscheduler_backube/v1/snapshotschedules.rs index bf386473b..2daed0925 100644 --- a/kube-custom-resources-rs/src/snapscheduler_backube/v1/snapshotschedules.rs +++ b/kube-custom-resources-rs/src/snapscheduler_backube/v1/snapshotschedules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/backube/snapscheduler/snapscheduler.backube/v1/snapshotschedules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshotclasses.rs b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshotclasses.rs index 402618646..d5e652766 100644 --- a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshotclasses.rs +++ b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshotclasses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-csi/external-snapshotter/snapshot.storage.k8s.io/v1/volumesnapshotclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshotcontents.rs b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshotcontents.rs index aa267f9c9..dc5b114f0 100644 --- a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshotcontents.rs +++ b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshotcontents.rs @@ -1,11 +1,12 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-csi/external-snapshotter/snapshot.storage.k8s.io/v1/volumesnapshotcontents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -64,7 +65,7 @@ pub struct VolumeSnapshotContentSpec { /// This field is immutable after creation. /// Required. #[serde(rename = "volumeSnapshotRef")] - pub volume_snapshot_ref: VolumeSnapshotContentVolumeSnapshotRef, + pub volume_snapshot_ref: ObjectReference, } /// spec defines properties of a VolumeSnapshotContent created by the underlying storage system. diff --git a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshots.rs b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshots.rs index 26a947a17..24ba3ad41 100644 --- a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshots.rs +++ b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1/volumesnapshots.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-csi/external-snapshotter/snapshot.storage.k8s.io/v1/volumesnapshots.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshotclasses.rs b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshotclasses.rs index d9e970d73..c9e51459f 100644 --- a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshotclasses.rs +++ b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshotclasses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-csi/external-snapshotter/snapshot.storage.k8s.io/v1beta1/volumesnapshotclasses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshotcontents.rs b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshotcontents.rs index b5e7b3941..1bc6fbb62 100644 --- a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshotcontents.rs +++ b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshotcontents.rs @@ -1,11 +1,12 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-csi/external-snapshotter/snapshot.storage.k8s.io/v1beta1/volumesnapshotcontents.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -28,7 +29,7 @@ pub struct VolumeSnapshotContentSpec { pub volume_snapshot_class_name: Option, /// volumeSnapshotRef specifies the VolumeSnapshot object to which this VolumeSnapshotContent object is bound. VolumeSnapshot.Spec.VolumeSnapshotContentName field must reference to this VolumeSnapshotContent's name for the bidirectional binding to be valid. For a pre-existing VolumeSnapshotContent object, name and namespace of the VolumeSnapshot object MUST be provided for binding to happen. This field is immutable after creation. Required. #[serde(rename = "volumeSnapshotRef")] - pub volume_snapshot_ref: VolumeSnapshotContentVolumeSnapshotRef, + pub volume_snapshot_ref: ObjectReference, } /// spec defines properties of a VolumeSnapshotContent created by the underlying storage system. Required. diff --git a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshots.rs b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshots.rs index cf44ac160..b902cc263 100644 --- a/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshots.rs +++ b/kube-custom-resources-rs/src/snapshot_storage_k8s_io/v1beta1/volumesnapshots.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-csi/external-snapshotter/snapshot.storage.k8s.io/v1beta1/volumesnapshots.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/platformapplications.rs b/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/platformapplications.rs index a9c67d1e8..c053a75c5 100644 --- a/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/platformapplications.rs +++ b/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/platformapplications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sns-controller/sns.services.k8s.aws/v1alpha1/platformapplications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/platformendpoints.rs b/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/platformendpoints.rs index a06505330..f9907c234 100644 --- a/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/platformendpoints.rs +++ b/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/platformendpoints.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sns-controller/sns.services.k8s.aws/v1alpha1/platformendpoints.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/subscriptions.rs b/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/subscriptions.rs index c6fb6367d..a28516de6 100644 --- a/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/subscriptions.rs +++ b/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/subscriptions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sns-controller/sns.services.k8s.aws/v1alpha1/subscriptions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/topics.rs b/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/topics.rs index 1724d3ac0..7d42d10eb 100644 --- a/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/topics.rs +++ b/kube-custom-resources-rs/src/sns_services_k8s_aws/v1alpha1/topics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sns-controller/sns.services.k8s.aws/v1alpha1/topics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sonataflow_org/v1alpha08/sonataflowbuilds.rs b/kube-custom-resources-rs/src/sonataflow_org/v1alpha08/sonataflowbuilds.rs index 659e70b7c..42ccbaa8c 100644 --- a/kube-custom-resources-rs/src/sonataflow_org/v1alpha08/sonataflowbuilds.rs +++ b/kube-custom-resources-rs/src/sonataflow_org/v1alpha08/sonataflowbuilds.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kiegroup/kogito-serverless-operator/sonataflow.org/v1alpha08/sonataflowbuilds.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sonataflow_org/v1alpha08/sonataflowplatforms.rs b/kube-custom-resources-rs/src/sonataflow_org/v1alpha08/sonataflowplatforms.rs index f6809c8e4..88fc302a1 100644 --- a/kube-custom-resources-rs/src/sonataflow_org/v1alpha08/sonataflowplatforms.rs +++ b/kube-custom-resources-rs/src/sonataflow_org/v1alpha08/sonataflowplatforms.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kiegroup/kogito-serverless-operator/sonataflow.org/v1alpha08/sonataflowplatforms.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -439,8 +439,8 @@ pub struct SonataFlowPlatformServicesDataIndex { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SonataFlowPlatformServicesDataIndexPersistence { /// Whether to migrate database on service startup? - #[serde(rename = "migrateDBOnStartUp")] - pub migrate_db_on_start_up: bool, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "migrateDBOnStartUp")] + pub migrate_db_on_start_up: Option, /// Connect configured services to a postgresql database. #[serde(default, skip_serializing_if = "Option::is_none")] pub postgresql: Option, @@ -4603,8 +4603,8 @@ pub struct SonataFlowPlatformServicesJobService { #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SonataFlowPlatformServicesJobServicePersistence { /// Whether to migrate database on service startup? - #[serde(rename = "migrateDBOnStartUp")] - pub migrate_db_on_start_up: bool, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "migrateDBOnStartUp")] + pub migrate_db_on_start_up: Option, /// Connect configured services to a postgresql database. #[serde(default, skip_serializing_if = "Option::is_none")] pub postgresql: Option, diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/buckets.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/buckets.rs index 5ea40545e..94b5fcd6c 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/buckets.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/buckets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1/buckets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/gitrepositories.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/gitrepositories.rs index 722844f8d..4d4256975 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/gitrepositories.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/gitrepositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1/gitrepositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/helmcharts.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/helmcharts.rs index 92d3c1061..f7a9a4b40 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/helmcharts.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/helmcharts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1/helmcharts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/helmrepositories.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/helmrepositories.rs index 95f3982a5..cef7e7a93 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/helmrepositories.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1/helmrepositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1/helmrepositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/buckets.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/buckets.rs index 42521a5c2..5328d2ab9 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/buckets.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/buckets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta1/buckets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/gitrepositories.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/gitrepositories.rs index 13c09d899..0f33218dd 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/gitrepositories.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/gitrepositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta1/gitrepositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/helmcharts.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/helmcharts.rs index 73095569e..41a353a04 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/helmcharts.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/helmcharts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta1/helmcharts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/helmrepositories.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/helmrepositories.rs index 354e2a2b3..10c82d3cd 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/helmrepositories.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta1/helmrepositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta1/helmrepositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/buckets.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/buckets.rs index 7e27c22a9..18bdbac61 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/buckets.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/buckets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta2/buckets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/gitrepositories.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/gitrepositories.rs index 3b5277255..3ac93179d 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/gitrepositories.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/gitrepositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta2/gitrepositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmcharts.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmcharts.rs index 19605ed93..5d7f8c850 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmcharts.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmcharts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta2/helmcharts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmrepositories.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmrepositories.rs index 24b3fd4e9..0577bb267 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmrepositories.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/helmrepositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta2/helmrepositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/ocirepositories.rs b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/ocirepositories.rs index 48c0802a1..e2c3c239b 100644 --- a/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/ocirepositories.rs +++ b/kube-custom-resources-rs/src/source_toolkit_fluxcd_io/v1beta2/ocirepositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/fluxcd/source-controller/source.toolkit.fluxcd.io/v1beta2/ocirepositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sparkoperator_k8s_io/v1beta2/scheduledsparkapplications.rs b/kube-custom-resources-rs/src/sparkoperator_k8s_io/v1beta2/scheduledsparkapplications.rs index e43d92566..d380dc189 100644 --- a/kube-custom-resources-rs/src/sparkoperator_k8s_io/v1beta2/scheduledsparkapplications.rs +++ b/kube-custom-resources-rs/src/sparkoperator_k8s_io/v1beta2/scheduledsparkapplications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/spark-on-k8s-operator/sparkoperator.k8s.io/v1beta2/scheduledsparkapplications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -288,6 +288,9 @@ pub struct ScheduledSparkApplicationTemplateDriver { /// Ports settings for the pods, following the Kubernetes specifications. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, + /// PriorityClassName is the name of the PriorityClass for the driver pod. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "priorityClassName")] + pub priority_class_name: Option, /// SchedulerName specifies the scheduler that will be used for scheduling #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, @@ -4330,6 +4333,9 @@ pub struct ScheduledSparkApplicationTemplateExecutor { /// Ports settings for the pods, following the Kubernetes specifications. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, + /// PriorityClassName is the name of the PriorityClass for the executor pod. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "priorityClassName")] + pub priority_class_name: Option, /// SchedulerName specifies the scheduler that will be used for scheduling #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, diff --git a/kube-custom-resources-rs/src/sparkoperator_k8s_io/v1beta2/sparkapplications.rs b/kube-custom-resources-rs/src/sparkoperator_k8s_io/v1beta2/sparkapplications.rs index 5871c51b6..8527fd3e1 100644 --- a/kube-custom-resources-rs/src/sparkoperator_k8s_io/v1beta2/sparkapplications.rs +++ b/kube-custom-resources-rs/src/sparkoperator_k8s_io/v1beta2/sparkapplications.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/GoogleCloudPlatform/spark-on-k8s-operator/sparkoperator.k8s.io/v1beta2/sparkapplications.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -265,6 +265,9 @@ pub struct SparkApplicationDriver { /// Ports settings for the pods, following the Kubernetes specifications. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, + /// PriorityClassName is the name of the PriorityClass for the driver pod. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "priorityClassName")] + pub priority_class_name: Option, /// SchedulerName specifies the scheduler that will be used for scheduling #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, @@ -4307,6 +4310,9 @@ pub struct SparkApplicationExecutor { /// Ports settings for the pods, following the Kubernetes specifications. #[serde(default, skip_serializing_if = "Option::is_none")] pub ports: Option>, + /// PriorityClassName is the name of the PriorityClass for the executor pod. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "priorityClassName")] + pub priority_class_name: Option, /// SchedulerName specifies the scheduler that will be used for scheduling #[serde(default, skip_serializing_if = "Option::is_none", rename = "schedulerName")] pub scheduler_name: Option, diff --git a/kube-custom-resources-rs/src/spv_no/v1/azurekeyvaultsecrets.rs b/kube-custom-resources-rs/src/spv_no/v1/azurekeyvaultsecrets.rs index f9462cd8c..aa9215ff0 100644 --- a/kube-custom-resources-rs/src/spv_no/v1/azurekeyvaultsecrets.rs +++ b/kube-custom-resources-rs/src/spv_no/v1/azurekeyvaultsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/SparebankenVest/azure-key-vault-to-kubernetes/spv.no/v1/azurekeyvaultsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/spv_no/v1alpha1/azurekeyvaultidentities.rs b/kube-custom-resources-rs/src/spv_no/v1alpha1/azurekeyvaultidentities.rs index 6344bebb4..e369c6829 100644 --- a/kube-custom-resources-rs/src/spv_no/v1alpha1/azurekeyvaultidentities.rs +++ b/kube-custom-resources-rs/src/spv_no/v1alpha1/azurekeyvaultidentities.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/SparebankenVest/azure-key-vault-to-kubernetes/spv.no/v1alpha1/azurekeyvaultidentities.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/spv_no/v1alpha1/azurekeyvaultsecrets.rs b/kube-custom-resources-rs/src/spv_no/v1alpha1/azurekeyvaultsecrets.rs index 05fdbdb25..43657856e 100644 --- a/kube-custom-resources-rs/src/spv_no/v1alpha1/azurekeyvaultsecrets.rs +++ b/kube-custom-resources-rs/src/spv_no/v1alpha1/azurekeyvaultsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/SparebankenVest/azure-key-vault-to-kubernetes/spv.no/v1alpha1/azurekeyvaultsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/spv_no/v1alpha1/azuremanagedidentities.rs b/kube-custom-resources-rs/src/spv_no/v1alpha1/azuremanagedidentities.rs index d2acfb73b..10c6cc6b7 100644 --- a/kube-custom-resources-rs/src/spv_no/v1alpha1/azuremanagedidentities.rs +++ b/kube-custom-resources-rs/src/spv_no/v1alpha1/azuremanagedidentities.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/SparebankenVest/azure-key-vault-to-kubernetes/spv.no/v1alpha1/azuremanagedidentities.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/spv_no/v2alpha1/azurekeyvaultsecrets.rs b/kube-custom-resources-rs/src/spv_no/v2alpha1/azurekeyvaultsecrets.rs index 7974e3f8b..9ae39fbaa 100644 --- a/kube-custom-resources-rs/src/spv_no/v2alpha1/azurekeyvaultsecrets.rs +++ b/kube-custom-resources-rs/src/spv_no/v2alpha1/azurekeyvaultsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/SparebankenVest/azure-key-vault-to-kubernetes/spv.no/v2alpha1/azurekeyvaultsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/spv_no/v2beta1/azurekeyvaultsecrets.rs b/kube-custom-resources-rs/src/spv_no/v2beta1/azurekeyvaultsecrets.rs index 7e25f5d84..6d00a3474 100644 --- a/kube-custom-resources-rs/src/spv_no/v2beta1/azurekeyvaultsecrets.rs +++ b/kube-custom-resources-rs/src/spv_no/v2beta1/azurekeyvaultsecrets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/SparebankenVest/azure-key-vault-to-kubernetes/spv.no/v2beta1/azurekeyvaultsecrets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sqs_services_k8s_aws/v1alpha1/queues.rs b/kube-custom-resources-rs/src/sqs_services_k8s_aws/v1alpha1/queues.rs index 852979bd9..3adee9c5a 100644 --- a/kube-custom-resources-rs/src/sqs_services_k8s_aws/v1alpha1/queues.rs +++ b/kube-custom-resources-rs/src/sqs_services_k8s_aws/v1alpha1/queues.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws-controllers-k8s/sqs-controller/sqs.services.k8s.aws/v1alpha1/queues.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constraintpodstatuses.rs b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constraintpodstatuses.rs index 843e23be0..8ffdf811f 100644 --- a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constraintpodstatuses.rs +++ b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constraintpodstatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/status.gatekeeper.sh/v1beta1/constraintpodstatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constrainttemplatepodstatuses.rs b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constrainttemplatepodstatuses.rs index 87857c148..d2d7a2f08 100644 --- a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constrainttemplatepodstatuses.rs +++ b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/constrainttemplatepodstatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/status.gatekeeper.sh/v1beta1/constrainttemplatepodstatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/expansiontemplatepodstatuses.rs b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/expansiontemplatepodstatuses.rs index 3adfc7537..4684c00f9 100644 --- a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/expansiontemplatepodstatuses.rs +++ b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/expansiontemplatepodstatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/status.gatekeeper.sh/v1beta1/expansiontemplatepodstatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/mutatorpodstatuses.rs b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/mutatorpodstatuses.rs index da5b94d5d..6a8bbddba 100644 --- a/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/mutatorpodstatuses.rs +++ b/kube-custom-resources-rs/src/status_gatekeeper_sh/v1beta1/mutatorpodstatuses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/status.gatekeeper.sh/v1beta1/mutatorpodstatuses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/storage_kubeblocks_io/v1alpha1/storageproviders.rs b/kube-custom-resources-rs/src/storage_kubeblocks_io/v1alpha1/storageproviders.rs index 01105cd27..9e35a1a35 100644 --- a/kube-custom-resources-rs/src/storage_kubeblocks_io/v1alpha1/storageproviders.rs +++ b/kube-custom-resources-rs/src/storage_kubeblocks_io/v1alpha1/storageproviders.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/storage.kubeblocks.io/v1alpha1/storageproviders.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/storageos_com/v1/storageosclusters.rs b/kube-custom-resources-rs/src/storageos_com/v1/storageosclusters.rs index 4840dab35..7f47e8d80 100644 --- a/kube-custom-resources-rs/src/storageos_com/v1/storageosclusters.rs +++ b/kube-custom-resources-rs/src/storageos_com/v1/storageosclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/storageos/operator/storageos.com/v1/storageosclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sts_min_io/v1alpha1/policybindings.rs b/kube-custom-resources-rs/src/sts_min_io/v1alpha1/policybindings.rs index e7a14a21b..be75a1f24 100644 --- a/kube-custom-resources-rs/src/sts_min_io/v1alpha1/policybindings.rs +++ b/kube-custom-resources-rs/src/sts_min_io/v1alpha1/policybindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/minio/operator/sts.min.io/v1alpha1/policybindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/sts_min_io/v1beta1/policybindings.rs b/kube-custom-resources-rs/src/sts_min_io/v1beta1/policybindings.rs index ee73db62c..9d920a70b 100644 --- a/kube-custom-resources-rs/src/sts_min_io/v1beta1/policybindings.rs +++ b/kube-custom-resources-rs/src/sts_min_io/v1beta1/policybindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/minio/operator/sts.min.io/v1beta1/policybindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/stunner_l7mp_io/v1/dataplanes.rs b/kube-custom-resources-rs/src/stunner_l7mp_io/v1/dataplanes.rs index 68b569232..fe5c8b630 100644 --- a/kube-custom-resources-rs/src/stunner_l7mp_io/v1/dataplanes.rs +++ b/kube-custom-resources-rs/src/stunner_l7mp_io/v1/dataplanes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/l7mp/stunner/stunner.l7mp.io/v1/dataplanes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/stunner_l7mp_io/v1/gatewayconfigs.rs b/kube-custom-resources-rs/src/stunner_l7mp_io/v1/gatewayconfigs.rs index d86b09e55..2efd7ae8b 100644 --- a/kube-custom-resources-rs/src/stunner_l7mp_io/v1/gatewayconfigs.rs +++ b/kube-custom-resources-rs/src/stunner_l7mp_io/v1/gatewayconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/l7mp/stunner/stunner.l7mp.io/v1/gatewayconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/stunner_l7mp_io/v1/staticservices.rs b/kube-custom-resources-rs/src/stunner_l7mp_io/v1/staticservices.rs index 72e3b1241..c423a0723 100644 --- a/kube-custom-resources-rs/src/stunner_l7mp_io/v1/staticservices.rs +++ b/kube-custom-resources-rs/src/stunner_l7mp_io/v1/staticservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/l7mp/stunner/stunner.l7mp.io/v1/staticservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/stunner_l7mp_io/v1/udproutes.rs b/kube-custom-resources-rs/src/stunner_l7mp_io/v1/udproutes.rs index 76643c670..3cdd861e9 100644 --- a/kube-custom-resources-rs/src/stunner_l7mp_io/v1/udproutes.rs +++ b/kube-custom-resources-rs/src/stunner_l7mp_io/v1/udproutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/l7mp/stunner/stunner.l7mp.io/v1/udproutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/dataplanes.rs b/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/dataplanes.rs index 95bbf61a6..1611a11b1 100644 --- a/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/dataplanes.rs +++ b/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/dataplanes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/l7mp/stunner/stunner.l7mp.io/v1alpha1/dataplanes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/gatewayconfigs.rs b/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/gatewayconfigs.rs index ab0dae0ed..b40045295 100644 --- a/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/gatewayconfigs.rs +++ b/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/gatewayconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/l7mp/stunner/stunner.l7mp.io/v1alpha1/gatewayconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/staticservices.rs b/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/staticservices.rs index 1b5329ac0..aea051ede 100644 --- a/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/staticservices.rs +++ b/kube-custom-resources-rs/src/stunner_l7mp_io/v1alpha1/staticservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/l7mp/stunner/stunner.l7mp.io/v1alpha1/staticservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/submariner_io/v1alpha1/brokers.rs b/kube-custom-resources-rs/src/submariner_io/v1alpha1/brokers.rs index 006281a81..c86411d69 100644 --- a/kube-custom-resources-rs/src/submariner_io/v1alpha1/brokers.rs +++ b/kube-custom-resources-rs/src/submariner_io/v1alpha1/brokers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/brokers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -17,6 +17,12 @@ use self::prelude::*; #[kube(derive="Default")] #[kube(derive="PartialEq")] pub struct BrokerSpec { + /// ClustersetIP supernet range for allocating ClustersetIPCIDRs to each cluster. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "clustersetIPCIDRRange")] + pub clusterset_ipcidr_range: Option, + /// Enable ClustersetIP default for connecting clusters. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "clustersetIPEnabled")] + pub clusterset_ip_enabled: Option, /// List of the components to be installed - any of [service-discovery, connectivity]. #[serde(default, skip_serializing_if = "Option::is_none")] pub components: Option>, diff --git a/kube-custom-resources-rs/src/submariner_io/v1alpha1/servicediscoveries.rs b/kube-custom-resources-rs/src/submariner_io/v1alpha1/servicediscoveries.rs index e55a1cc9d..02de309f4 100644 --- a/kube-custom-resources-rs/src/submariner_io/v1alpha1/servicediscoveries.rs +++ b/kube-custom-resources-rs/src/submariner_io/v1alpha1/servicediscoveries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/servicediscoveries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -33,6 +33,10 @@ pub struct ServiceDiscoverySpec { pub broker_k8s_secret: Option, #[serde(rename = "clusterID")] pub cluster_id: String, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "clustersetIPCIDR")] + pub clusterset_ipcidr: Option, + #[serde(default, skip_serializing_if = "Option::is_none", rename = "clustersetIPEnabled")] + pub clusterset_ip_enabled: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "coreDNSCustomConfig")] pub core_dns_custom_config: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "customDomains")] diff --git a/kube-custom-resources-rs/src/submariner_io/v1alpha1/submariners.rs b/kube-custom-resources-rs/src/submariner_io/v1alpha1/submariners.rs index 4f5651bb5..c78f38c60 100644 --- a/kube-custom-resources-rs/src/submariner_io/v1alpha1/submariners.rs +++ b/kube-custom-resources-rs/src/submariner_io/v1alpha1/submariners.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/submariner-io/submariner-operator/submariner.io/v1alpha1/submariners.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -69,6 +69,12 @@ pub struct SubmarinerSpec { /// The cluster ID used to identify the tunnels. #[serde(rename = "clusterID")] pub cluster_id: String, + /// ClustersetIP CIDR for allocating ClustersetIPs to exported services. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "clustersetIPCIDR")] + pub clusterset_ipcidr: Option, + /// Enable ClustersetIP default for services exported on this cluster. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "clustersetIPEnabled")] + pub clusterset_ip_enabled: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "colorCodes")] pub color_codes: Option, /// The gateway connection health check. @@ -173,6 +179,9 @@ pub struct SubmarinerStatus { /// The current cluster ID. #[serde(rename = "clusterID")] pub cluster_id: String, + /// The current clustersetIP CIDR. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "clustersetIPCIDR")] + pub clusterset_ipcidr: Option, #[serde(default, skip_serializing_if = "Option::is_none", rename = "colorCodes")] pub color_codes: Option, /// Information about the deployment. diff --git a/kube-custom-resources-rs/src/telemetry_istio_io/v1/telemetries.rs b/kube-custom-resources-rs/src/telemetry_istio_io/v1/telemetries.rs index b029fa241..95b9a3d64 100644 --- a/kube-custom-resources-rs/src/telemetry_istio_io/v1/telemetries.rs +++ b/kube-custom-resources-rs/src/telemetry_istio_io/v1/telemetries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/telemetry.istio.io/v1/telemetries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/telemetry_istio_io/v1alpha1/telemetries.rs b/kube-custom-resources-rs/src/telemetry_istio_io/v1alpha1/telemetries.rs index 52792eba8..4ed109a1a 100644 --- a/kube-custom-resources-rs/src/telemetry_istio_io/v1alpha1/telemetries.rs +++ b/kube-custom-resources-rs/src/telemetry_istio_io/v1alpha1/telemetries.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/istio/istio/telemetry.istio.io/v1alpha1/telemetries.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1/constrainttemplates.rs b/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1/constrainttemplates.rs index 7ff59092d..abdde3f57 100644 --- a/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1/constrainttemplates.rs +++ b/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1/constrainttemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/templates.gatekeeper.sh/v1/constrainttemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1alpha1/constrainttemplates.rs b/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1alpha1/constrainttemplates.rs index 3d4f57441..bf375a777 100644 --- a/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1alpha1/constrainttemplates.rs +++ b/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1alpha1/constrainttemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/templates.gatekeeper.sh/v1alpha1/constrainttemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1beta1/constrainttemplates.rs b/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1beta1/constrainttemplates.rs index 4ed182b75..ffb0e1c4e 100644 --- a/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1beta1/constrainttemplates.rs +++ b/kube-custom-resources-rs/src/templates_gatekeeper_sh/v1beta1/constrainttemplates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/open-policy-agent/gatekeeper/templates.gatekeeper.sh/v1beta1/constrainttemplates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tempo_grafana_com/v1alpha1/tempomonolithics.rs b/kube-custom-resources-rs/src/tempo_grafana_com/v1alpha1/tempomonolithics.rs index bf12224e9..c2c5bf08b 100644 --- a/kube-custom-resources-rs/src/tempo_grafana_com/v1alpha1/tempomonolithics.rs +++ b/kube-custom-resources-rs/src/tempo_grafana_com/v1alpha1/tempomonolithics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/tempo-operator/tempo.grafana.com/v1alpha1/tempomonolithics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tempo_grafana_com/v1alpha1/tempostacks.rs b/kube-custom-resources-rs/src/tempo_grafana_com/v1alpha1/tempostacks.rs index 9ff628b51..e9c46dbc5 100644 --- a/kube-custom-resources-rs/src/tempo_grafana_com/v1alpha1/tempostacks.rs +++ b/kube-custom-resources-rs/src/tempo_grafana_com/v1alpha1/tempostacks.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/grafana/tempo-operator/tempo.grafana.com/v1alpha1/tempostacks.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalclusterclients.rs b/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalclusterclients.rs index 79589e060..84ccaa315 100644 --- a/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalclusterclients.rs +++ b/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalclusterclients.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/alexandrevilain/temporal-operator/temporal.io/v1beta1/temporalclusterclients.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalnamespaces.rs b/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalnamespaces.rs index 02c1b552b..eb9fbd49b 100644 --- a/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalnamespaces.rs +++ b/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalnamespaces.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/alexandrevilain/temporal-operator/temporal.io/v1beta1/temporalnamespaces.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalworkerprocesses.rs b/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalworkerprocesses.rs index b23a2d8e2..3146f20f5 100644 --- a/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalworkerprocesses.rs +++ b/kube-custom-resources-rs/src/temporal_io/v1beta1/temporalworkerprocesses.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/alexandrevilain/temporal-operator/temporal.io/v1beta1/temporalworkerprocesses.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v1/scripts.rs b/kube-custom-resources-rs/src/tests_testkube_io/v1/scripts.rs index 4a66ba53d..a05cb0253 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v1/scripts.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v1/scripts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v1/scripts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v1/testexecutions.rs b/kube-custom-resources-rs/src/tests_testkube_io/v1/testexecutions.rs index 5c19e40fa..54c2d5ceb 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v1/testexecutions.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v1/testexecutions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v1/testexecutions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v1/tests.rs b/kube-custom-resources-rs/src/tests_testkube_io/v1/tests.rs index 143d5188c..5ebb8d1a6 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v1/tests.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v1/tests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v1/tests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v1/testsources.rs b/kube-custom-resources-rs/src/tests_testkube_io/v1/testsources.rs index 48b459e16..a1c71cd6b 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v1/testsources.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v1/testsources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v1/testsources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v1/testsuiteexecutions.rs b/kube-custom-resources-rs/src/tests_testkube_io/v1/testsuiteexecutions.rs index 6d6424ac5..4f91499b6 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v1/testsuiteexecutions.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v1/testsuiteexecutions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v1/testsuiteexecutions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v1/testsuites.rs b/kube-custom-resources-rs/src/tests_testkube_io/v1/testsuites.rs index f417e8be2..ac67ed27b 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v1/testsuites.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v1/testsuites.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v1/testsuites.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v1/testtriggers.rs b/kube-custom-resources-rs/src/tests_testkube_io/v1/testtriggers.rs index 193d4c551..5a3d6256d 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v1/testtriggers.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v1/testtriggers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v1/testtriggers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v2/scripts.rs b/kube-custom-resources-rs/src/tests_testkube_io/v2/scripts.rs index 089c8b835..76e54b686 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v2/scripts.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v2/scripts.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v2/scripts.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v2/tests.rs b/kube-custom-resources-rs/src/tests_testkube_io/v2/tests.rs index 4c82db88a..66fdb9df5 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v2/tests.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v2/tests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v2/tests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v2/testsuites.rs b/kube-custom-resources-rs/src/tests_testkube_io/v2/testsuites.rs index 8fd76561e..427a6a5ba 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v2/testsuites.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v2/testsuites.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v2/testsuites.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v3/tests.rs b/kube-custom-resources-rs/src/tests_testkube_io/v3/tests.rs index 6e034f042..f6ec161a8 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v3/tests.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v3/tests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v3/tests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tests_testkube_io/v3/testsuites.rs b/kube-custom-resources-rs/src/tests_testkube_io/v3/testsuites.rs index ae0e0524c..8fb0e792e 100644 --- a/kube-custom-resources-rs/src/tests_testkube_io/v3/testsuites.rs +++ b/kube-custom-resources-rs/src/tests_testkube_io/v3/testsuites.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubeshop/testkube-operator/tests.testkube.io/v3/testsuites.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analytics.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analytics.rs index c7f452352..90398fd12 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analytics.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analytics.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/analytics.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analyticsalarm.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analyticsalarm.rs index 49cd9ca1d..ee873cbca 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analyticsalarm.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analyticsalarm.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/analyticsalarm.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analyticssnmp.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analyticssnmp.rs index e0efad3ee..fc9d233d1 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analyticssnmp.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/analyticssnmp.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/analyticssnmp.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/cassandras.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/cassandras.rs index c86de883e..26e7f6ca6 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/cassandras.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/cassandras.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/cassandras.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/configs.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/configs.rs index 0344a676e..48a63ae73 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/configs.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/configs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/configs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/controls.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/controls.rs index 2d772b146..e72bbb279 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/controls.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/controls.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/controls.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/kubemanagers.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/kubemanagers.rs index 31327134b..57d3dbdf6 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/kubemanagers.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/kubemanagers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/kubemanagers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/managers.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/managers.rs index 9898c517b..6d4a5964e 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/managers.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/managers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/managers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/queryengine.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/queryengine.rs index 61b194406..a4c18a185 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/queryengine.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/queryengine.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/queryengine.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/rabbitmqs.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/rabbitmqs.rs index aa754a8e4..7c6d12c54 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/rabbitmqs.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/rabbitmqs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/rabbitmqs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/redis.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/redis.rs index fd9ad8d9e..844135f3d 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/redis.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/redis.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/redis.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/vrouters.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/vrouters.rs index 84ffe6c45..3e828d1e1 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/vrouters.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/vrouters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/vrouters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/zookeepers.rs b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/zookeepers.rs index 28aba6f04..c730483fb 100644 --- a/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/zookeepers.rs +++ b/kube-custom-resources-rs/src/tf_tungsten_io/v1alpha1/zookeepers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tungstenfabric/tf-operator/tf.tungsten.io/v1alpha1/zookeepers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/theketch_io/v1beta1/apps.rs b/kube-custom-resources-rs/src/theketch_io/v1beta1/apps.rs index 7c63902a6..c098beb27 100644 --- a/kube-custom-resources-rs/src/theketch_io/v1beta1/apps.rs +++ b/kube-custom-resources-rs/src/theketch_io/v1beta1/apps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/theketchio/ketch/theketch.io/v1beta1/apps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/theketch_io/v1beta1/jobs.rs b/kube-custom-resources-rs/src/theketch_io/v1beta1/jobs.rs index 7f309d668..01011a2b1 100644 --- a/kube-custom-resources-rs/src/theketch_io/v1beta1/jobs.rs +++ b/kube-custom-resources-rs/src/theketch_io/v1beta1/jobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/theketchio/ketch/theketch.io/v1beta1/jobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/hardware.rs b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/hardware.rs index f9390a762..cc3a741ce 100644 --- a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/hardware.rs +++ b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/hardware.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/tink/tinkerbell.org/v1alpha1/hardware.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/osies.rs b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/osies.rs index 068a5ce40..430839a96 100644 --- a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/osies.rs +++ b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/osies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/tink/tinkerbell.org/v1alpha1/osies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/stack.rs b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/stack.rs index 6d367a831..bbfff63b3 100644 --- a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/stack.rs +++ b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/stack.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/operator/tinkerbell.org/v1alpha1/stack.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/templates.rs b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/templates.rs index 33cda7c89..6b482e761 100644 --- a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/templates.rs +++ b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/templates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/tink/tinkerbell.org/v1alpha1/templates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/workflows.rs b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/workflows.rs index d681f35a9..9c5c9a042 100644 --- a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/workflows.rs +++ b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha1/workflows.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/tink/tinkerbell.org/v1alpha1/workflows.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/hardware.rs b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/hardware.rs index 87b36259f..5a75beb27 100644 --- a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/hardware.rs +++ b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/hardware.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/tink/tinkerbell.org/v1alpha2/hardware.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/osies.rs b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/osies.rs index ac320e351..fa7aabaea 100644 --- a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/osies.rs +++ b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/osies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/tink/tinkerbell.org/v1alpha2/osies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/templates.rs b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/templates.rs index 53d958134..53c3c4eeb 100644 --- a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/templates.rs +++ b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/templates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/tink/tinkerbell.org/v1alpha2/templates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/workflows.rs b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/workflows.rs index 11acd9017..e60b90313 100644 --- a/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/workflows.rs +++ b/kube-custom-resources-rs/src/tinkerbell_org/v1alpha2/workflows.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/tinkerbell/tink/tinkerbell.org/v1alpha2/workflows.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/topology_node_k8s_io/v1alpha1/noderesourcetopologies.rs b/kube-custom-resources-rs/src/topology_node_k8s_io/v1alpha1/noderesourcetopologies.rs index a7020e2c8..200fa84d6 100644 --- a/kube-custom-resources-rs/src/topology_node_k8s_io/v1alpha1/noderesourcetopologies.rs +++ b/kube-custom-resources-rs/src/topology_node_k8s_io/v1alpha1/noderesourcetopologies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/node-feature-discovery-operator/topology.node.k8s.io/v1alpha1/noderesourcetopologies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/topolvm_cybozu_com/v1/logicalvolumes.rs b/kube-custom-resources-rs/src/topolvm_cybozu_com/v1/logicalvolumes.rs index b7f8bab64..86a0e6f2b 100644 --- a/kube-custom-resources-rs/src/topolvm_cybozu_com/v1/logicalvolumes.rs +++ b/kube-custom-resources-rs/src/topolvm_cybozu_com/v1/logicalvolumes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/alauda/nativestor/topolvm.cybozu.com/v1/logicalvolumes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/topolvm_cybozu_com/v2/topolvmclusters.rs b/kube-custom-resources-rs/src/topolvm_cybozu_com/v2/topolvmclusters.rs index 9d66991ff..c11d8578c 100644 --- a/kube-custom-resources-rs/src/topolvm_cybozu_com/v2/topolvmclusters.rs +++ b/kube-custom-resources-rs/src/topolvm_cybozu_com/v2/topolvmclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/alauda/nativestor/topolvm.cybozu.com/v2/topolvmclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressroutes.rs b/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressroutes.rs index 61afe0a1a..ba5c439cc 100644 --- a/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressroutes.rs +++ b/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressroutes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/traefik/traefik/traefik.io/v1alpha1/ingressroutes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressroutetcps.rs b/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressroutetcps.rs index b3b66b226..9b6795ede 100644 --- a/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressroutetcps.rs +++ b/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressroutetcps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/traefik/traefik/traefik.io/v1alpha1/ingressroutetcps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressrouteudps.rs b/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressrouteudps.rs index 4493c990e..2fc442fa4 100644 --- a/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressrouteudps.rs +++ b/kube-custom-resources-rs/src/traefik_io/v1alpha1/ingressrouteudps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/traefik/traefik/traefik.io/v1alpha1/ingressrouteudps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/traefik_io/v1alpha1/middlewaretcps.rs b/kube-custom-resources-rs/src/traefik_io/v1alpha1/middlewaretcps.rs index 618414b6e..f1070ad11 100644 --- a/kube-custom-resources-rs/src/traefik_io/v1alpha1/middlewaretcps.rs +++ b/kube-custom-resources-rs/src/traefik_io/v1alpha1/middlewaretcps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/traefik/traefik/traefik.io/v1alpha1/middlewaretcps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/traefik_io/v1alpha1/serverstransports.rs b/kube-custom-resources-rs/src/traefik_io/v1alpha1/serverstransports.rs index 5ce1ae35c..81a932a81 100644 --- a/kube-custom-resources-rs/src/traefik_io/v1alpha1/serverstransports.rs +++ b/kube-custom-resources-rs/src/traefik_io/v1alpha1/serverstransports.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/traefik/traefik/traefik.io/v1alpha1/serverstransports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/traefik_io/v1alpha1/serverstransporttcps.rs b/kube-custom-resources-rs/src/traefik_io/v1alpha1/serverstransporttcps.rs index dc77b14a1..e1cd13fda 100644 --- a/kube-custom-resources-rs/src/traefik_io/v1alpha1/serverstransporttcps.rs +++ b/kube-custom-resources-rs/src/traefik_io/v1alpha1/serverstransporttcps.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/traefik/traefik/traefik.io/v1alpha1/serverstransporttcps.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/traefik_io/v1alpha1/tlsoptions.rs b/kube-custom-resources-rs/src/traefik_io/v1alpha1/tlsoptions.rs index 80d1e0c57..4bf288c73 100644 --- a/kube-custom-resources-rs/src/traefik_io/v1alpha1/tlsoptions.rs +++ b/kube-custom-resources-rs/src/traefik_io/v1alpha1/tlsoptions.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/traefik/traefik/traefik.io/v1alpha1/tlsoptions.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/traefik_io/v1alpha1/tlsstores.rs b/kube-custom-resources-rs/src/traefik_io/v1alpha1/tlsstores.rs index 06706a1be..85bc799c3 100644 --- a/kube-custom-resources-rs/src/traefik_io/v1alpha1/tlsstores.rs +++ b/kube-custom-resources-rs/src/traefik_io/v1alpha1/tlsstores.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/traefik/traefik/traefik.io/v1alpha1/tlsstores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/traefik_io/v1alpha1/traefikservices.rs b/kube-custom-resources-rs/src/traefik_io/v1alpha1/traefikservices.rs index 85d0c52c2..fb88c30b3 100644 --- a/kube-custom-resources-rs/src/traefik_io/v1alpha1/traefikservices.rs +++ b/kube-custom-resources-rs/src/traefik_io/v1alpha1/traefikservices.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/traefik/traefik/traefik.io/v1alpha1/traefikservices.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/elasticdljobs.rs b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/elasticdljobs.rs index ec1df9838..f685ccd0b 100644 --- a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/elasticdljobs.rs +++ b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/elasticdljobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/training.kubedl.io/v1alpha1/elasticdljobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/marsjobs.rs b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/marsjobs.rs index 438824b74..e2e29c04e 100644 --- a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/marsjobs.rs +++ b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/marsjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/training.kubedl.io/v1alpha1/marsjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/mpijobs.rs b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/mpijobs.rs index c4b1e9f47..755ca8452 100644 --- a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/mpijobs.rs +++ b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/mpijobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/training.kubedl.io/v1alpha1/mpijobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/pytorchjobs.rs b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/pytorchjobs.rs index 235e1b161..e7775deb9 100644 --- a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/pytorchjobs.rs +++ b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/pytorchjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/training.kubedl.io/v1alpha1/pytorchjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/tfjobs.rs b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/tfjobs.rs index b79c35627..f3838de0d 100644 --- a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/tfjobs.rs +++ b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/tfjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/training.kubedl.io/v1alpha1/tfjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/xdljobs.rs b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/xdljobs.rs index ff6237fe3..0a5aa178d 100644 --- a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/xdljobs.rs +++ b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/xdljobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/training.kubedl.io/v1alpha1/xdljobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/xgboostjobs.rs b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/xgboostjobs.rs index ddd8597d1..b5b372090 100644 --- a/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/xgboostjobs.rs +++ b/kube-custom-resources-rs/src/training_kubedl_io/v1alpha1/xgboostjobs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubedl-io/kubedl/training.kubedl.io/v1alpha1/xgboostjobs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/trident_netapp_io/v1/tridentorchestrators.rs b/kube-custom-resources-rs/src/trident_netapp_io/v1/tridentorchestrators.rs index 0007657bb..8053a787d 100644 --- a/kube-custom-resources-rs/src/trident_netapp_io/v1/tridentorchestrators.rs +++ b/kube-custom-resources-rs/src/trident_netapp_io/v1/tridentorchestrators.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/NetApp/trident/trident.netapp.io/v1/tridentorchestrators.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/trust_cert_manager_io/v1alpha1/bundles.rs b/kube-custom-resources-rs/src/trust_cert_manager_io/v1alpha1/bundles.rs index b1bc2849d..21cef50de 100644 --- a/kube-custom-resources-rs/src/trust_cert_manager_io/v1alpha1/bundles.rs +++ b/kube-custom-resources-rs/src/trust_cert_manager_io/v1alpha1/bundles.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/cert-manager/trust-manager/trust.cert-manager.io/v1alpha1/bundles.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/upgrade_cattle_io/v1/plans.rs b/kube-custom-resources-rs/src/upgrade_cattle_io/v1/plans.rs index b08c45f2a..ffcee25c7 100644 --- a/kube-custom-resources-rs/src/upgrade_cattle_io/v1/plans.rs +++ b/kube-custom-resources-rs/src/upgrade_cattle_io/v1/plans.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/rancher/system-upgrade-controller/upgrade.cattle.io/v1/plans.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/upgrade_managed_openshift_io/v1alpha1/upgradeconfigs.rs b/kube-custom-resources-rs/src/upgrade_managed_openshift_io/v1alpha1/upgradeconfigs.rs index 640410515..ca606b162 100644 --- a/kube-custom-resources-rs/src/upgrade_managed_openshift_io/v1alpha1/upgradeconfigs.rs +++ b/kube-custom-resources-rs/src/upgrade_managed_openshift_io/v1alpha1/upgradeconfigs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/openshift/managed-upgrade-operator/upgrade.managed.openshift.io/v1alpha1/upgradeconfigs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/velero_io/v1/backuprepositories.rs b/kube-custom-resources-rs/src/velero_io/v1/backuprepositories.rs index b2def2f1f..ca614c2d2 100644 --- a/kube-custom-resources-rs/src/velero_io/v1/backuprepositories.rs +++ b/kube-custom-resources-rs/src/velero_io/v1/backuprepositories.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v1/backuprepositories.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/velero_io/v1/backups.rs b/kube-custom-resources-rs/src/velero_io/v1/backups.rs index 06f80c57e..368ec829b 100644 --- a/kube-custom-resources-rs/src/velero_io/v1/backups.rs +++ b/kube-custom-resources-rs/src/velero_io/v1/backups.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v1/backups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/velero_io/v1/backupstoragelocations.rs b/kube-custom-resources-rs/src/velero_io/v1/backupstoragelocations.rs index e58401045..93674252c 100644 --- a/kube-custom-resources-rs/src/velero_io/v1/backupstoragelocations.rs +++ b/kube-custom-resources-rs/src/velero_io/v1/backupstoragelocations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v1/backupstoragelocations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/velero_io/v1/deletebackuprequests.rs b/kube-custom-resources-rs/src/velero_io/v1/deletebackuprequests.rs index 2fb39a79a..f933f7efe 100644 --- a/kube-custom-resources-rs/src/velero_io/v1/deletebackuprequests.rs +++ b/kube-custom-resources-rs/src/velero_io/v1/deletebackuprequests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v1/deletebackuprequests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/velero_io/v1/downloadrequests.rs b/kube-custom-resources-rs/src/velero_io/v1/downloadrequests.rs index 291142c86..21eda625e 100644 --- a/kube-custom-resources-rs/src/velero_io/v1/downloadrequests.rs +++ b/kube-custom-resources-rs/src/velero_io/v1/downloadrequests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v1/downloadrequests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/velero_io/v1/podvolumebackups.rs b/kube-custom-resources-rs/src/velero_io/v1/podvolumebackups.rs index cc1d5a21f..2794fc83c 100644 --- a/kube-custom-resources-rs/src/velero_io/v1/podvolumebackups.rs +++ b/kube-custom-resources-rs/src/velero_io/v1/podvolumebackups.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v1/podvolumebackups.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -25,7 +26,7 @@ pub struct PodVolumeBackupSpec { /// Node is the name of the node that the Pod is running on. pub node: String, /// Pod is a reference to the pod containing the volume to be backed up. - pub pod: PodVolumeBackupPod, + pub pod: ObjectReference, /// RepoIdentifier is the backup repository identifier. #[serde(rename = "repoIdentifier")] pub repo_identifier: String, diff --git a/kube-custom-resources-rs/src/velero_io/v1/podvolumerestores.rs b/kube-custom-resources-rs/src/velero_io/v1/podvolumerestores.rs index 8964d0bba..6c0de65a8 100644 --- a/kube-custom-resources-rs/src/velero_io/v1/podvolumerestores.rs +++ b/kube-custom-resources-rs/src/velero_io/v1/podvolumerestores.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v1/podvolumerestores.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -23,7 +24,7 @@ pub struct PodVolumeRestoreSpec { #[serde(rename = "backupStorageLocation")] pub backup_storage_location: String, /// Pod is a reference to the pod containing the volume to be restored. - pub pod: PodVolumeRestorePod, + pub pod: ObjectReference, /// RepoIdentifier is the backup repository identifier. #[serde(rename = "repoIdentifier")] pub repo_identifier: String, diff --git a/kube-custom-resources-rs/src/velero_io/v1/schedules.rs b/kube-custom-resources-rs/src/velero_io/v1/schedules.rs index 2fa0d57f4..d627908f0 100644 --- a/kube-custom-resources-rs/src/velero_io/v1/schedules.rs +++ b/kube-custom-resources-rs/src/velero_io/v1/schedules.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v1/schedules.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/velero_io/v1/serverstatusrequests.rs b/kube-custom-resources-rs/src/velero_io/v1/serverstatusrequests.rs index bbec8c54a..25b53b032 100644 --- a/kube-custom-resources-rs/src/velero_io/v1/serverstatusrequests.rs +++ b/kube-custom-resources-rs/src/velero_io/v1/serverstatusrequests.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v1/serverstatusrequests.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/velero_io/v1/volumesnapshotlocations.rs b/kube-custom-resources-rs/src/velero_io/v1/volumesnapshotlocations.rs index c889d6996..148eac895 100644 --- a/kube-custom-resources-rs/src/velero_io/v1/volumesnapshotlocations.rs +++ b/kube-custom-resources-rs/src/velero_io/v1/volumesnapshotlocations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v1/volumesnapshotlocations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/velero_io/v2alpha1/datadownloads.rs b/kube-custom-resources-rs/src/velero_io/v2alpha1/datadownloads.rs index 90e306c07..dd3fc0744 100644 --- a/kube-custom-resources-rs/src/velero_io/v2alpha1/datadownloads.rs +++ b/kube-custom-resources-rs/src/velero_io/v2alpha1/datadownloads.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v2alpha1/datadownloads.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/velero_io/v2alpha1/datauploads.rs b/kube-custom-resources-rs/src/velero_io/v2alpha1/datauploads.rs index 361474177..e18b8e756 100644 --- a/kube-custom-resources-rs/src/velero_io/v2alpha1/datauploads.rs +++ b/kube-custom-resources-rs/src/velero_io/v2alpha1/datauploads.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/vmware-tanzu/velero/velero.io/v2alpha1/datauploads.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/virt_virtink_smartx_com/v1alpha1/virtualmachinemigrations.rs b/kube-custom-resources-rs/src/virt_virtink_smartx_com/v1alpha1/virtualmachinemigrations.rs index 3dbf51c51..804e7ef01 100644 --- a/kube-custom-resources-rs/src/virt_virtink_smartx_com/v1alpha1/virtualmachinemigrations.rs +++ b/kube-custom-resources-rs/src/virt_virtink_smartx_com/v1alpha1/virtualmachinemigrations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/smartxworks/virtink/virt.virtink.smartx.com/v1alpha1/virtualmachinemigrations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/virt_virtink_smartx_com/v1alpha1/virtualmachines.rs b/kube-custom-resources-rs/src/virt_virtink_smartx_com/v1alpha1/virtualmachines.rs index b41927c9c..2e1c23106 100644 --- a/kube-custom-resources-rs/src/virt_virtink_smartx_com/v1alpha1/virtualmachines.rs +++ b/kube-custom-resources-rs/src/virt_virtink_smartx_com/v1alpha1/virtualmachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/smartxworks/virtink/virt.virtink.smartx.com/v1alpha1/virtualmachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/volsync_backube/v1alpha1/replicationdestinations.rs b/kube-custom-resources-rs/src/volsync_backube/v1alpha1/replicationdestinations.rs index ea8c0baf9..a4dda28c9 100644 --- a/kube-custom-resources-rs/src/volsync_backube/v1alpha1/replicationdestinations.rs +++ b/kube-custom-resources-rs/src/volsync_backube/v1alpha1/replicationdestinations.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/backube/volsync/volsync.backube/v1alpha1/replicationdestinations.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -1110,6 +1110,11 @@ pub struct ReplicationDestinationRestic { /// accessModes must be specified. #[serde(default, skip_serializing_if = "Option::is_none", rename = "destinationPVC")] pub destination_pvc: Option, + /// enableFileDeletion will pass the --delete flag to the restic restore command. + /// This will remove files and directories in the pvc that do not exist in the snapshot being restored. + /// Defaults to false. + #[serde(default, skip_serializing_if = "Option::is_none", rename = "enableFileDeletion")] + pub enable_file_deletion: Option, /// MoverAffinity allows specifying the PodAffinity that will be used by the data mover #[serde(default, skip_serializing_if = "Option::is_none", rename = "moverAffinity")] pub mover_affinity: Option, diff --git a/kube-custom-resources-rs/src/volsync_backube/v1alpha1/replicationsources.rs b/kube-custom-resources-rs/src/volsync_backube/v1alpha1/replicationsources.rs index 73471e552..2dbe4427d 100644 --- a/kube-custom-resources-rs/src/volsync_backube/v1alpha1/replicationsources.rs +++ b/kube-custom-resources-rs/src/volsync_backube/v1alpha1/replicationsources.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/backube/volsync/volsync.backube/v1alpha1/replicationsources.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/vpcresources_k8s_aws/v1alpha1/cninodes.rs b/kube-custom-resources-rs/src/vpcresources_k8s_aws/v1alpha1/cninodes.rs index fb99c5cb2..79809c653 100644 --- a/kube-custom-resources-rs/src/vpcresources_k8s_aws/v1alpha1/cninodes.rs +++ b/kube-custom-resources-rs/src/vpcresources_k8s_aws/v1alpha1/cninodes.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/amazon-vpc-resource-controller-k8s/vpcresources.k8s.aws/v1alpha1/cninodes.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -10,7 +10,8 @@ mod prelude { } use self::prelude::*; -/// Important: Run "make" to regenerate code after modifying this file CNINodeSpec defines the desired state of CNINode +/// Important: Run "make" to regenerate code after modifying this file +/// CNINodeSpec defines the desired state of CNINode #[derive(CustomResource, Serialize, Deserialize, Clone, Debug, Default, PartialEq)] #[kube(group = "vpcresources.k8s.aws", version = "v1alpha1", kind = "CNINode", plural = "cninodes")] #[kube(schema = "disabled")] diff --git a/kube-custom-resources-rs/src/vpcresources_k8s_aws/v1beta1/securitygrouppolicies.rs b/kube-custom-resources-rs/src/vpcresources_k8s_aws/v1beta1/securitygrouppolicies.rs index 2bed35a25..af9dd14ae 100644 --- a/kube-custom-resources-rs/src/vpcresources_k8s_aws/v1beta1/securitygrouppolicies.rs +++ b/kube-custom-resources-rs/src/vpcresources_k8s_aws/v1beta1/securitygrouppolicies.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/amazon-vpc-resource-controller-k8s/vpcresources.k8s.aws/v1beta1/securitygrouppolicies.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { @@ -18,36 +18,49 @@ use self::prelude::*; #[kube(derive="Default")] #[kube(derive="PartialEq")] pub struct SecurityGroupPolicySpec { - /// A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. + /// A label selector is a label query over a set of resources. The result of matchLabels and + /// matchExpressions are ANDed. An empty label selector matches all objects. A null + /// label selector matches no objects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "podSelector")] pub pod_selector: Option, /// GroupIds contains the list of security groups that will be applied to the network interface of the pod matching the criteria. #[serde(default, skip_serializing_if = "Option::is_none", rename = "securityGroups")] pub security_groups: Option, - /// A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. + /// A label selector is a label query over a set of resources. The result of matchLabels and + /// matchExpressions are ANDed. An empty label selector matches all objects. A null + /// label selector matches no objects. #[serde(default, skip_serializing_if = "Option::is_none", rename = "serviceAccountSelector")] pub service_account_selector: Option, } -/// A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. +/// A label selector is a label query over a set of resources. The result of matchLabels and +/// matchExpressions are ANDed. An empty label selector matches all objects. A null +/// label selector matches no objects. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SecurityGroupPolicyPodSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SecurityGroupPolicyPodSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } @@ -60,25 +73,34 @@ pub struct SecurityGroupPolicySecurityGroups { pub group_ids: Option>, } -/// A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. +/// A label selector is a label query over a set of resources. The result of matchLabels and +/// matchExpressions are ANDed. An empty label selector matches all objects. A null +/// label selector matches no objects. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SecurityGroupPolicyServiceAccountSelector { /// matchExpressions is a list of label selector requirements. The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")] pub match_expressions: Option>, - /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. + /// matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels + /// map is equivalent to an element of matchExpressions, whose key field is "key", the + /// operator is "In", and the values array contains only "value". The requirements are ANDed. #[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")] pub match_labels: Option>, } -/// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. +/// A label selector requirement is a selector that contains values, a key, and an operator that +/// relates the key and values. #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] pub struct SecurityGroupPolicyServiceAccountSelectorMatchExpressions { /// key is the label key that the selector applies to. pub key: String, - /// operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. + /// operator represents a key's relationship to a set of values. + /// Valid operators are In, NotIn, Exists and DoesNotExist. pub operator: String, - /// values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. + /// values is an array of string values. If the operator is In or NotIn, + /// the values array must be non-empty. If the operator is Exists or DoesNotExist, + /// the values array must be empty. This array is replaced during a strategic + /// merge patch. #[serde(default, skip_serializing_if = "Option::is_none")] pub values: Option>, } diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/clusterpolicyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/clusterpolicyreports.rs index 64259d6f4..9470674d9 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/clusterpolicyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/clusterpolicyreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1alpha1/clusterpolicyreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -29,7 +30,7 @@ pub struct ClusterPolicyReportResults { pub resource_selector: Option, /// Resources is an optional reference to the resource checked by the policy and rule #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Rule is the name of the policy rule #[serde(default, skip_serializing_if = "Option::is_none")] pub rule: Option, @@ -67,33 +68,6 @@ pub struct ClusterPolicyReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ClusterPolicyReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum ClusterPolicyReportResultsSeverity { diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/policyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/policyreports.rs index fe9e808b2..f8b369084 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/policyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha1/policyreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1alpha1/policyreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -29,7 +30,7 @@ pub struct PolicyReportResults { pub resource_selector: Option, /// Resources is an optional reference to the resource checked by the policy and rule #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Rule is the name of the policy rule #[serde(default, skip_serializing_if = "Option::is_none")] pub rule: Option, @@ -67,33 +68,6 @@ pub struct PolicyReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct PolicyReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum PolicyReportResultsSeverity { diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/clusterpolicyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/clusterpolicyreports.rs index 61f7d569f..613438edd 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/clusterpolicyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/clusterpolicyreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1alpha2/clusterpolicyreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -29,7 +30,7 @@ pub struct ClusterPolicyReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -73,33 +74,6 @@ pub struct ClusterPolicyReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ClusterPolicyReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum ClusterPolicyReportResultsResult { diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/policyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/policyreports.rs index a2343c44f..fc8be691c 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/policyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1alpha2/policyreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1alpha2/policyreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -29,7 +30,7 @@ pub struct PolicyReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -73,33 +74,6 @@ pub struct PolicyReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct PolicyReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum PolicyReportResultsResult { diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/clusterpolicyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/clusterpolicyreports.rs index 55397069a..7cba5dfdf 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/clusterpolicyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/clusterpolicyreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1beta1/clusterpolicyreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -45,7 +46,7 @@ pub struct ClusterPolicyReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -89,33 +90,6 @@ pub struct ClusterPolicyReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct ClusterPolicyReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum ClusterPolicyReportResultsResult { diff --git a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/policyreports.rs b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/policyreports.rs index 75e3d5d90..027e45954 100644 --- a/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/policyreports.rs +++ b/kube-custom-resources-rs/src/wgpolicyk8s_io/v1beta1/policyreports.rs @@ -1,12 +1,13 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/kubernetes-sigs/wg-policy-prototypes/wgpolicyk8s.io/v1beta1/policyreports.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { pub use kube::CustomResource; pub use serde::{Serialize, Deserialize}; pub use std::collections::BTreeMap; + pub use k8s_openapi::api::core::v1::ObjectReference; } use self::prelude::*; @@ -45,7 +46,7 @@ pub struct PolicyReportResults { pub resource_selector: Option, /// Subjects is an optional reference to the checked Kubernetes resources #[serde(default, skip_serializing_if = "Option::is_none")] - pub resources: Option>, + pub resources: Option>, /// Result indicates the outcome of the policy rule execution #[serde(default, skip_serializing_if = "Option::is_none")] pub result: Option, @@ -89,33 +90,6 @@ pub struct PolicyReportResultsResourceSelectorMatchExpressions { pub values: Option>, } -/// ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. -/// Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 . -#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)] -pub struct PolicyReportResultsResources { - /// API version of the referent. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "apiVersion")] - pub api_version: Option, - /// If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future. - #[serde(default, skip_serializing_if = "Option::is_none", rename = "fieldPath")] - pub field_path: Option, - /// Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - #[serde(default, skip_serializing_if = "Option::is_none")] - pub kind: Option, - /// Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - #[serde(default, skip_serializing_if = "Option::is_none")] - pub name: Option, - /// Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ - #[serde(default, skip_serializing_if = "Option::is_none")] - pub namespace: Option, - /// Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency - #[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceVersion")] - pub resource_version: Option, - /// UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids - #[serde(default, skip_serializing_if = "Option::is_none")] - pub uid: Option, -} - /// PolicyReportResult provides the result for an individual policy #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] pub enum PolicyReportResultsResult { diff --git a/kube-custom-resources-rs/src/wildfly_org/v1alpha1/wildflyservers.rs b/kube-custom-resources-rs/src/wildfly_org/v1alpha1/wildflyservers.rs index cd4f809e7..e7f993d6a 100644 --- a/kube-custom-resources-rs/src/wildfly_org/v1alpha1/wildflyservers.rs +++ b/kube-custom-resources-rs/src/wildfly_org/v1alpha1/wildflyservers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/wildfly/wildfly-operator/wildfly.org/v1alpha1/wildflyservers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/work_karmada_io/v1alpha1/clusterresourcebindings.rs b/kube-custom-resources-rs/src/work_karmada_io/v1alpha1/clusterresourcebindings.rs index 1927f3025..c884fd8ed 100644 --- a/kube-custom-resources-rs/src/work_karmada_io/v1alpha1/clusterresourcebindings.rs +++ b/kube-custom-resources-rs/src/work_karmada_io/v1alpha1/clusterresourcebindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/work.karmada.io/v1alpha1/clusterresourcebindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/work_karmada_io/v1alpha1/resourcebindings.rs b/kube-custom-resources-rs/src/work_karmada_io/v1alpha1/resourcebindings.rs index 864d3d81d..121ab40b9 100644 --- a/kube-custom-resources-rs/src/work_karmada_io/v1alpha1/resourcebindings.rs +++ b/kube-custom-resources-rs/src/work_karmada_io/v1alpha1/resourcebindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/work.karmada.io/v1alpha1/resourcebindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/work_karmada_io/v1alpha2/clusterresourcebindings.rs b/kube-custom-resources-rs/src/work_karmada_io/v1alpha2/clusterresourcebindings.rs index f31cbb709..2a6ba287a 100644 --- a/kube-custom-resources-rs/src/work_karmada_io/v1alpha2/clusterresourcebindings.rs +++ b/kube-custom-resources-rs/src/work_karmada_io/v1alpha2/clusterresourcebindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/work.karmada.io/v1alpha2/clusterresourcebindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/work_karmada_io/v1alpha2/resourcebindings.rs b/kube-custom-resources-rs/src/work_karmada_io/v1alpha2/resourcebindings.rs index 988e95f0f..6fbacb47a 100644 --- a/kube-custom-resources-rs/src/work_karmada_io/v1alpha2/resourcebindings.rs +++ b/kube-custom-resources-rs/src/work_karmada_io/v1alpha2/resourcebindings.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/karmada-io/karmada/work.karmada.io/v1alpha2/resourcebindings.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta1/appwrappers.rs b/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta1/appwrappers.rs index a7652a54c..08744c52b 100644 --- a/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta1/appwrappers.rs +++ b/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta1/appwrappers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/project-codeflare/codeflare-operator/workload.codeflare.dev/v1beta1/appwrappers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta1/schedulingspecs.rs b/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta1/schedulingspecs.rs index 4cde42b13..3a80d9d38 100644 --- a/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta1/schedulingspecs.rs +++ b/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta1/schedulingspecs.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/project-codeflare/codeflare-operator/workload.codeflare.dev/v1beta1/schedulingspecs.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta2/appwrappers.rs b/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta2/appwrappers.rs index 2934cd6e5..200113918 100644 --- a/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta2/appwrappers.rs +++ b/kube-custom-resources-rs/src/workload_codeflare_dev/v1beta2/appwrappers.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/project-codeflare/codeflare-operator/workload.codeflare.dev/v1beta2/appwrappers.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/workloads_kubeblocks_io/v1alpha1/instancesets.rs b/kube-custom-resources-rs/src/workloads_kubeblocks_io/v1alpha1/instancesets.rs index 903f78db4..dc2ae2943 100644 --- a/kube-custom-resources-rs/src/workloads_kubeblocks_io/v1alpha1/instancesets.rs +++ b/kube-custom-resources-rs/src/workloads_kubeblocks_io/v1alpha1/instancesets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/workloads.kubeblocks.io/v1alpha1/instancesets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/workloads_kubeblocks_io/v1alpha1/replicatedstatemachines.rs b/kube-custom-resources-rs/src/workloads_kubeblocks_io/v1alpha1/replicatedstatemachines.rs index d6e9e6bf2..763fd0c2a 100644 --- a/kube-custom-resources-rs/src/workloads_kubeblocks_io/v1alpha1/replicatedstatemachines.rs +++ b/kube-custom-resources-rs/src/workloads_kubeblocks_io/v1alpha1/replicatedstatemachines.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/apecloud/kubeblocks/workloads.kubeblocks.io/v1alpha1/replicatedstatemachines.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/zonecontrol_k8s_aws/v1/zoneawareupdates.rs b/kube-custom-resources-rs/src/zonecontrol_k8s_aws/v1/zoneawareupdates.rs index c15536bd7..588757deb 100644 --- a/kube-custom-resources-rs/src/zonecontrol_k8s_aws/v1/zoneawareupdates.rs +++ b/kube-custom-resources-rs/src/zonecontrol_k8s_aws/v1/zoneawareupdates.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/zone-aware-controllers-for-k8s/zonecontrol.k8s.aws/v1/zoneawareupdates.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/zonecontrol_k8s_aws/v1/zonedisruptionbudgets.rs b/kube-custom-resources-rs/src/zonecontrol_k8s_aws/v1/zonedisruptionbudgets.rs index e83987536..2bf186f38 100644 --- a/kube-custom-resources-rs/src/zonecontrol_k8s_aws/v1/zonedisruptionbudgets.rs +++ b/kube-custom-resources-rs/src/zonecontrol_k8s_aws/v1/zonedisruptionbudgets.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/aws/zone-aware-controllers-for-k8s/zonecontrol.k8s.aws/v1/zonedisruptionbudgets.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude { diff --git a/kube-custom-resources-rs/src/zookeeper_pravega_io/v1beta1/zookeeperclusters.rs b/kube-custom-resources-rs/src/zookeeper_pravega_io/v1beta1/zookeeperclusters.rs index 2b9099fad..b23141d06 100644 --- a/kube-custom-resources-rs/src/zookeeper_pravega_io/v1beta1/zookeeperclusters.rs +++ b/kube-custom-resources-rs/src/zookeeper_pravega_io/v1beta1/zookeeperclusters.rs @@ -1,6 +1,6 @@ // WARNING: generated by kopium - manual changes will be overwritten // kopium command: kopium --docs --filename=./crd-catalog/pravega/zookeeper-operator/zookeeper.pravega.io/v1beta1/zookeeperclusters.yaml --derive=Default --derive=PartialEq --smart-derive-elision -// kopium version: 0.20.1 +// kopium version: 0.21.1 #[allow(unused_imports)] mod prelude {